如何确定MySQL客户端使用的连接方法?

要确定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上与本地主机的连接

缺省情况下,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上可用。