mysql.sock 文件什么作用?
mysql.sock應該是mysql的主機和客戶機在同一host(物理服務器)上的時候,使用unix domain socket做為通訊協議的載體,它比tcp快
在mysql的啟動過程中有時會遇到下述錯誤
Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)
通常遇到這個問題的原因就是你的mysql server沒運行起來。
看看你的 /tmp/mysql.sock 這個文件存在否?正常情況下它應該在那里的,或者用 netstat 看看結果中是否有 Active UNIX domain sockets
客戶端mysql程序與服務器端mysqld程序,(my.cnf配置可以明白)可以選擇是否mysql.sock文件鏈接(需要在同一物理服務器)。
非本地的鏈接,具體查看mysql手冊
找不到mysql.sock
Got an error: Connection error: Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock'
mysql.sock 突然消失算是常見的問題
如果是第一次安裝MySQL后運行時出現,那只要找出 mysql.sock 在哪里就可以了。
以上的信息表明,mysql.sock應該是在 /var/lib/mysql/ 下 ,如果你找了沒找到
就:
#locate mysql.sock
就會出來了,接着你就可以
#mysqladmin -S /路徑/mysql.sock -u root
如果是原來很正常的,突然有一天系統告訴你找不到mysql.sock這鬼文件了,怎么辦?
用/etc/rc.d/init.d/mysql restart 或者service mysql restart 重啟服務了(不行就殺進程重啟服務)