我试图弄清楚为什么mysql默认使用Unix套接字(/tmp/mysql.sock),而不是普通的TCP/IP套接字。是否有任何合法的理由通过TCP/IP与MySQL使用Unix套接字?
它似乎不是一个安全的事情,因为你只能在127.0.0.1上监听,这应该是同样安全的(套接字文件是世界可写的,所以你没有得到基于Unix帐户的保护)。
当然,所有的操作系统都依赖高性能的TCP/IP,以至于它不能比Unix套接字慢得多 - 即使对于网络流量,Linux也会执行各种零复制技巧,所以它肯定必须快速地进行环回。
那么,有没有在这里使用Unix套接字任何正当的理由,还是仅仅是一些奇怪的历史事件?
这属于serverfault。 – monksy 2009-12-03 08:04:53