1. 程式人生 > >linux下mysql ERROR 2002 (HY000)錯誤解決方法

linux下mysql ERROR 2002 (HY000)錯誤解決方法

本人用的的deepin系統 (linux不是windwos哦)
昨天關機的時候報了遺傳錯誤,就預感可能某個程式會出問題,果然,今天來了mysql啟動不了了。
用mysql -u root 連結資料庫報錯

ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)

到了/var/run/mysqld下檢視果然沒有mysqld.sock。
於是去/var/log/mysql下看了error.log,日誌裡發現了這樣的錯誤

[ERROR] Plugin 'InnoDB' init function returned error.
[ERROR] Plugin 'InnoDB' registration as a STORAGE ENGINE failed.

從網上查資料,發現需要刪除幾個庫檔案。到/var/lib/mysql下發現有ib_logfile0,ib_logfile1。
果斷刪除

sudo rm -rf /var/lib/mysql/ib_logfile*

重新啟動mysql成功。
發現一個怪問題,我使用

systemctl start mysql.service

沒有啟動起來。但是使用

/etc/init.d/mysql start

卻成功了。
又遇到問題的朋友可以參考我的方法,但是檔案路徑不一定是這樣的,因為安裝的時候我是用apt-get安裝所以,mysql的檔案分佈在系統的各個目錄下,如果你是自己編譯安裝,你的ib_logfile檔案可能會在mysq’l的目錄下。