MySQL接続の2つの方法


Mysqlには2つの接続方式があります:1,TCP/IPという外部方式の接続は、ユーザー名、パスワード、ポート番号を指定する必要があります(デフォルトのポート番号の場合は使用しないでください)
[root@centos7 ~]# mysql -h192.168.97.189 -uroot -p -P3307    
Enter password: 
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 6
Server version: 5.7.15 MySQL Community Server (GPL)

Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> status
--------------
mysql  Ver 14.14 Distrib 5.7.15, for Linux (x86_64) using  EditLine wrapper

Connection id:          6
Current database:
Current user:           loge@centos7
SSL:                    Cipher in use is DHE-RSA-AES256-SHA
Current pager:          stdout
Using outfile:          ''
Using delimiter:        ;
Server version:         5.7.15 MySQL Community Server (GPL)
Protocol version:       10
Connection:             192.168.97.189 via TCP/IP
Server characterset:    latin1
Db     characterset:    latin1
Client characterset:    utf8
Conn.  characterset:    utf8
TCP port:               3307
Uptime:                 3 min 50 sec

Threads: 2  Questions: 13  Slow queries: 0  Opens: 112  Flush tables: 1  Open tables: 105  Queries per second avg: 0.056
--------------

mysql>

2,socket対mysql.sockにとって、プログラムはmysqlserverと同じマシンにあり、ローカル接続を開始するときにのみ使用できます.ホストに接続する具体的なIPアドレスを定義する必要はありません.空またはlocalhostであればいいです.この場合、指定接続のポートは機能しません.例えば、プロファイルが3307であれば、ポートを指定しなくても接続できます.また、再接続ではlocalhostでログインします.例えばroot@localhostああ、localhostは127.0.0.1とは異なり、前者はsocket、後者はsocket!君がいるからiniまたはmy.cnfでポートを変更するとmysql.sockはmysql serverの起動ごとに生成されます.あなたが変更したことに基づいてmy.cnf後にmysqlを再起動すると再生成され、情報は変更されました.では、外部接続については、portを変更しなければ接続できません.
 
[root@centos7 ~]# mysql -uroot -p -S /tmp/mysql.sock
Enter password: 
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 3
Server version: 5.7.15 MySQL Community Server (GPL)

Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> status
--------------
mysql  Ver 14.14 Distrib 5.7.15, for Linux (x86_64) using  EditLine wrapper

Connection id:          3
Current database:
Current user:           root@localhost
SSL:                    Not in use
Current pager:          stdout
Using outfile:          ''
Using delimiter:        ;
Server version:         5.7.15 MySQL Community Server (GPL)
Protocol version:       10
Connection:             Localhost via UNIX socket
Server characterset:    latin1
Db     characterset:    latin1
Client characterset:    utf8
Conn.  characterset:    utf8
UNIX socket:            /tmp/mysql.sock
Uptime:                 47 sec

Threads: 1  Questions: 7  Slow queries: 0  Opens: 105  Flush tables: 1  Open tables: 98  Queries per second avg: 0.148
--------------

mysql>

また、linuxの下にmysql接続をインストールするとmysqlが見つからないというメッセージが返ってくることが多い.sockファイル、解決方法は簡単です:新しくインストールしたmysqlで、ファイルが見つからないことをヒントにして、findで検索して、正しい位置を指定するか、コマンドmysql--verbose--help|grep socketを使ってmysqlが見つかったかどうかを見てみましょう.sockファイルが誤削除するとmysqlサービスを再起動する必要があり、再起動に成功するとdatadirまたは指定ディレクトリの下にmysqlが生成する.ロック、そしてmyを構成します.cnf. Windowsではパイプ接続もサポートされています.