mysql.sock问题
Can't connect to local MySQL server through socket '/tmp/mysql.sock'
上述提示可能在啟動mysql時遇到,即在/tmp/mysql.sock位置找不到所需要的mysql.sock文件,主要是由于my.cnf文件里對mysql.sock的位置設定導致。
mysql.sock默認的是在/var/lib/mysql, 如果發現確實是在該目錄下,可以在[mysqld]下面加入mysql.sock的path
vi /etc/my.cnf(my.cnf也可能在其他路徑下)
[mysqld]
port??????????? = 3306
socket?????? = /var/lib/mysql/mysql.sock
但是要保證使用mysql的用戶具有對該目錄的寫權限,否則這樣的改動由于權限限制仍然會報錯。
所以為了避免權限問題也可以使用軟鏈接為/var/lib/mysql/mysql.sock創建一個到/tmp/mysql.sock的聯接
ln -s /var/lib/mysql/mysql.sock /tmp/mysql.sock
由于/tmp/文件夾默認對other有w權限,這樣就可以避免權限問題。
此外,如果發現mysql.sock不在默認的/var/lib/mysql位置,一種解決方法是使用find命令搜索mysql.sock的位置,然后按前面兩種解決方案挑一種做即可。
?
注意:首先要看my.cnf中是否指定了sock連接文件,如果指定了,連接方式如下:
[root@iZ11ofs]# mysql -uroot -p'111'? -S? /DATA/mysql/mysql.sock
轉載于:https://www.cnblogs.com/byfboke/p/9095445.html
創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎總結
以上是生活随笔為你收集整理的mysql.sock问题的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 成都欢乐谷有几个过山车
- 下一篇: MySQL数据库的回滚失败(JAVA)