什么是套接字(MySQL)

4

我在PHP中使用mysqli类连接MySQL。该类构造函数有6个参数:主机、用户名、密码、数据库名、端口和套接字。我理解了除最后一个参数外的所有参数。在这个上下文中,套接字是什么,为什么它是可选的?

2个回答

3
这个参数用于指定Unix套接字的路径。只有当主机是“localhost”且套接字不在默认位置时才应使用它。
在Unix系统中,MySQL程序对主机名“localhost”进行了特殊处理,这与您预期的其他基于网络的程序可能不同。对于连接到localhost的情况,MySQL程序尝试通过使用Unix套接字文件来连接本地服务器。

它有用途吗?它与微软Windows无关吗? - HelloWorld

1

这是关于UNIX socket(也称为“命名管道”)的引用,由UNIX命令mkfifo创建。MySQL可以使用互联网套接字(addr:port)或UNIX套接字(在文件系统上)进行连接。


它有用途吗?它与Microsoft Windows无关吗? - HelloWorld
在Windows中,一个非常粗略的等价物将是命名管道。 - Marc B
好的,我不知道那是什么。 - HelloWorld
可能还有这个链接对您有帮助:http://en.wikipedia.org/wiki/Named_pipe。基本上,它是地址+端口(TCP)连接的替代方案,并且绕过内核的网络部分,使其更快,但仅适用于同一台机器。 - Amadan

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接