7.8.4 在多服务器环境中使用客户端程序
要将客户端程序连接到 MySQL 服务器,该服务器监听的网络接口不同于编译到客户端的接口,可以使用以下方法之一:
-
使用
--host=
主机名称
--port=
连接到远程服务器,使用端口号
--host=127.0.0.1
--port=
连接到本地服务器,或者使用端口号
--host=localhost
--socket=
连接到本地服务器使用 Unix socket 文件或 Windows 命名管道。文件名
-
使用以下命令启动客户端以连接:
--protocol=TCP
:使用 TCP/IP 连接--protocol=SOCKET
:使用 Unix socket 文件连接--protocol=PIPE
:使用命名管道连接--protocol=MEMORY
:使用共享内存连接 对于 TCP/IP 连接,您可能还需要指定--host
和--port
选项。 对于其他类型的连接,您可能需要指定--socket
选项以指定 Unix socket 文件或 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 上的 home 目录中的.my.cnf
文件。请参阅第6.2.2.2节,“使用选项文件”。 -
在 C 程序中,您可以在
mysql_real_connect()
调用中指定套接字文件或端口号 Arguments。您还可以让程序读取选项文件通过调用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);
其他编程接口可能提供类似的功能来读取选项文件。