如何强制 MySQL 通过 TCP 而不是 Unix 套接字连接?
诸如“mysql”和“mysqldump”之类的程序,它们使用 MySQL 客户端库,可以借助多种传输协议(例如 TCP/IP、Unix 套接字文件、命名管道、共享内存等)支持 MySQL 连接到服务器。
对于给定的连接,如果未指定传输协议,则将其确定为单独的任务。
示例
连接到 localhost 将在 Unix 和类 Unix 系统上导致套接字文件连接,而在其他情况下则导致到 127.0.0.1 的 TCP/IP 连接。如果必须特别指定协议,则使用 --protocol 命令选项来完成。
下表显示了 --protocol 允许的值,并说明了每个值适用的平台。需要注意的是,这些值不区分大小写。
--protocol 值 | 使用的传输协议 | 适用平台 |
---|---|---|
TCP | TCP/IP | 所有 |
SOCKET | Unix 套接字文件 | Unix 和类 Unix 系统 |
PIPE | 命名管道 | Windows |
MEMORY | 共享内存 | Windows |
TCP/IP 传输也支持连接到本地或远程 MySQL 服务器。套接字文件、命名管道和共享内存传输仅支持连接到本地 MySQL 服务器。需要注意的是,命名管道传输确实允许远程连接,但截至目前,MySQL 中尚未实现此功能。
传输协议 - 未指定
如果未指定传输协议,则 localhost 被解释为 -
在 Unix 和类 Unix 系统上,连接到 localhost 将导致套接字文件连接。
在其他系统上,连接到 localhost 将导致到 127.0.0.1 的 TCP/IP 连接。
传输协议 - 已指定
如果指定了传输协议,则根据该特定协议解释 localhost。
广告