【发布时间】:2014-04-26 15:07:13
【问题描述】:
我正在使用 PHP 中的 mysqli 类连接到 MySQL。类构造函数有 6 个参数:主机、用户名、密码、数据库名、端口和套接字。除了最后一个,我都明白了。在这种情况下什么是套接字,为什么它是可选的?
【问题讨论】:
标签: php mysql sockets unix mysqli
我正在使用 PHP 中的 mysqli 类连接到 MySQL。类构造函数有 6 个参数:主机、用户名、密码、数据库名、端口和套接字。除了最后一个,我都明白了。在这种情况下什么是套接字,为什么它是可选的?
【问题讨论】:
标签: php mysql sockets unix mysqli
该参数用于指定unix socket的路径。这仅应在主机为 localhost 且套接字不在默认位置时使用。
在 Unix 上,MySQL 程序会特别对待主机名 localhost, 以一种可能与您所期望的方式不同的方式 其他基于网络的程序。对于到 localhost、MySQL 的连接 程序尝试使用 Unix 套接字 连接到本地服务器 文件。
【讨论】:
它是对UNIX socket(也称为“命名管道”)的引用,由 UNIX 命令mkfifo 创建。 MySQL 可以使用 Internet 套接字 (addr:port) 或 UNIX 套接字(在文件系统上)进行连接。
【讨论】: