要使用客户端程序连接到监听与编译到客户端不同的网络接口的 MySQL 服务器,可以使用以下方法之一
使用
--host=
host_name
--port=
启动客户端,以使用 TCP/IP 连接到远程服务器,使用port_number
--host=127.0.0.1
--port=
连接到本地服务器,或使用port_number
--host=localhost
--socket=
连接到使用 Unix 套接字文件或 Windows 命名管道连接的本地服务器。file_name
使用
--protocol=TCP
启动客户端,以使用 TCP/IP 连接,使用--protocol=SOCKET
使用 Unix 套接字文件连接,使用--protocol=PIPE
使用命名管道连接,或使用--protocol=MEMORY
使用共享内存连接。对于 TCP/IP 连接,您可能还需要指定--host
和--port
选项。对于其他类型的连接,您可能需要指定--socket
选项以指定 Unix 套接字文件或 Windows 命名管道名称,或者指定--shared-memory-base-name
选项以指定共享内存名称。共享内存连接仅在 Windows 上受支持。在 Unix 上,在启动客户端之前,将
MYSQL_UNIX_PORT
和MYSQL_TCP_PORT
环境变量设置为指向 Unix 套接字文件和 TCP/IP 端口号。如果您通常使用特定的套接字文件或端口号,则可以在您的.login
文件中放置设置这些环境变量的命令,以便它们在每次登录时都适用。请参见 第 6.9 节,“环境变量”。在选项文件的
[client]
组中指定默认 Unix 套接字文件和 TCP/IP 端口号。例如,您可以在 Windows 上使用C:\my.cnf
,或者在 Unix 上使用您主目录中的.my.cnf
文件。请参见 第 6.2.2.2 节,“使用选项文件”。在 C 程序中,您可以在
mysql_real_connect()
调用中指定套接字文件或端口号参数。您还可以通过调用mysql_options()
让程序读取选项文件。请参见 C API 基本函数描述。如果您使用 Perl
DBD::mysql
模块,则可以从 MySQL 选项文件读取选项。例如$dsn = "DBI:mysql:test;mysql_read_default_group=client;" . "mysql_read_default_file=/usr/local/mysql/data/my.cnf"; $dbh = DBI->connect($dsn, $user, $password);
请参见 第 31.9 节,“MySQL Perl API”。
其他编程接口可能提供类似的功能来读取选项文件。