在安裝postfix服務時遇到的mysql.sock問題

問題描述: 
使用MySQL -uroot -p登陸出現找不到 /var/lib/mysql/mysql.sock問題。 

能夠用以下命令登陸:mysql -p --socket=/tmp/mysql.sock

解決方法: 
大多數mysql都是rpm方式安裝的。它會自動尋找/var/lib/mysql/mysql.sock這個文件。

檢查mysql.sock的位置。 
經過/etc/my.cnf中的socket的字段。 
若是socket以下所示:

socket=/tmp/mysql.sock
html

能夠參考這篇文章mysql

http://blog.csdn.net/u012346692/article/details/52329553sql

https://www.cnblogs.com/summer-cool/p/3959699.htmlvim

https://yq.aliyun.com/articles/45840安全

通常此時不少人要用#find查找,即 #find mysql.sockapp

結果是:socket

[root@mail ~]# find mysql.sock
find: `mysql.sock': No such file or directory
[root@mail ~]# spa

實際上是輸入的參數有問題!!!!.net

正確的應該是server

MySQL中mysql.sock找不到的解決方法

連接MySQL時,報錯:

 

cant connect to mysql server through socket '/tmp/mysql.sock'

 

本質上這個問題是mysql.sock在其餘路徑致使的。

有文章說能夠經過修改my.cnf的socket路徑,但我的嘗試後發現,這樣可能致使mysql的服務起不來。

筆者認爲,仍是用軟鏈接比較安全,方法以下:

 

一、找到mysql.sock

使用 find / -name mysql.sock進行尋找。若是找不到,那麼說明該socket可能不是這個名字。

所以,須要先找到my.cnf,輸入:

 

find / -name my.cnf

vim /<your path to my.cnf>/my.cnf

 

在裏面找到該sock的名字。例如筆者的就是mysqld.sock.

而後經過 find 定位,找到sock的路徑。

 

二、軟連接

把sock軟連接到目標路徑。以筆者的問題爲例,就是:

ln -s /run/mysqld/mysqld.sock /tmp/mysql.sock

 

Problem Solved !

Happy Coding ~

相關文章
相關標籤/搜索