要确定MySQL连接使用的连接方法,可以使用以下命令-
netstat −ln | grep 'mysql'
在Unix上,MySQL程序以特殊方式对待主机名“ localhost”。因此,它的行为不同于预期的行为。
要了解mysql CLI中的连接类型,可以使用以下命令-
mysql> \s
输出-
Connection: 127.0.0.1 via TCP/IP (or) Connection: Localhost via UNIX socket
与本地服务器的TCP / IP连接
为确保客户端与本地服务器建立TCP / IP连接,可以使用--host或-h。这会将主机名值指定为127.0.0.1,或将本地服务器的IP地址或名称指定。还可以借助--protocol = TCP选项为localhost明确指定连接协议。让我们看一个例子-
shell> mysql --host=127.0.0.1 shell> mysql --protocol=TCP
--protocol = {TCP | SOCKET | PIPE | MEMORY}选项明确指定必须使用某种协议来连接到服务器
缺省情况下,Unix上的localhost连接是在Unix套接字文件的帮助下进行的。让我们看看如何使用以下命令完成此操作-
shell> mysql --host=localhost
要强制使用TCP / IP连接,可以指定--protocol选项。让我们看看如何做到-
shell> mysql --host=localhost --protocol=TCP
下面列出了一些协议类型-
TCP-连接到本地或远程服务器的TCP / IP连接。它在所有平台上都可用。
SOCKET-这是到本地服务器的Unix套接字文件连接。它仅在Unix上可用。
PIPE-这是到本地或远程服务器的命名管道连接。它仅在Windows上可用。
内存-这是到本地服务器的共享内存连接。它仅在Windows上可用。