Linux下Mysql啟動異常排查方案


遇到Mysql啟動異常問題,可以從以下幾個方面依次進行問題排查:

(1)如果遇到“Can't connect to local MySQL server through socket '/tmp/mysql.sock'”類似問題,查看Mysql配置文件(默認在/etc/my.cnf目錄下),使用命令vi /etc/my.cnf,查看是否具備如下配置,

[mysqld]
port            = 3306
socket       = /var/lib/mysql/mysql.sock

可能其存在訪問權限問題,故對其建立軟連接:ln -s /var/lib/mysql/mysql.sock /tmp/mysql.sock

(2)使用命令:systemctl status mysql.service查看mysql服務是否正常(在重裝Mysql時,存在服務假啟動現象,可以執行systemctl restart mysql.service查看Mysql是否能正常啟動)。若無法正常啟動,查看並分析其報錯原因。

(3)若對於(2)過程中,無法查看失敗原因的。從系統日志(默認目錄在:/var/log/message)和Mysql日志文件中進行查看(默認目錄在:/var/log/mysql/error.log),分析原因。

(4)若(3)不奏效,可以直接使用/usr/sbin/mysql運行Mysql可執行腳本對Mysql進行啟動,查看具體報錯原因。

(5)最后,使用ps -ef|grep mysql 查看是否有其他進程占用,導致Mysql無法啟動。直接使用kill -9 [進程ID]殺掉進程,再執行(4)操作,看是否能夠啟動Mysql。

如果經歷了上述步驟,發現問題依舊沒有解決,有個萬能解決方案,先把Mysql卸載,然后重裝。如何完全卸載Mysql服務,步驟如下:

  sudo rm -rf /var/lib/mysql

  sudo rm -rf /etc/mysql

  sudo apt-get autoremove mysql* --purge     //注:如果這個步驟無法正常執行,可先執行apt-get remove mysql-server*

  sudo apt-get remove apparmor

  sudo apt-get install mysql-server mysql-common

  

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM