最近在啟動mysql的時候發現mysql報錯了,錯誤代碼是2002,通過查找相關的資料發現是var/lib/mysql 的訪問權限問題,所以這篇文章主要介紹了mysql中異常錯誤error:2002的解決方法,需要的朋友可以參考借鑒,下面來一起看看吧。
最近在啟動mysql 報錯,錯誤提示如下:
ERROR?2002?(HY000):?Can't?connect?to?local?MySQL?server?through? socket?‘/var/lib/mysql/mysql.sock'?(2)
排查過程
1、先查看 /etc/rc.d/init.d/mysqld status 看看mysql是否已經啟動.
另外看看是不是權限問題.
2、確定你的mysql.sock是不是在那個位置,
mysql?-u?你的mysql用戶名?-p?-S?/var/lib/mysql/mysql.sock
3、試試:service mysqld start
4、如果是權限問題,則先改變權限 #chown -R mysql:mysql /var/lib/mysql
[root@localhost?~]#?/etc/init.d/mysqld?start 啟動?MySQL:?[?確定?] [root@localhost?~]#?mysql?-u?root?-p
ERROR?2002?(HY000):?Can't?connect?to?local?MySQL?server?through? socket?'/var/lib/mysql/mysql.sock'?(2)
原因是,/var/lib/mysql 的訪問權限問題。
shell>?chown?-R?mysql:mysql?/var/lib/mysql
接著啟動服務器
shell>?/etc/init.d/mysql?start
服務器正常啟動后察看 /var/lib/mysql 自動生成mysql.sock文件。
但是我的問題仍然沒有得到解決。
問題終于解決:
方法: 修改/etc/my.conf:
[mysqld] datadir=/usr/local/mysql/data socket=/var/lib/mysql/mysql.sock [mysql.server] user=mysql basedir=/usr/local/mysql If?there?is?not?currently?a?section?called?[client],?add?one?at?the?bottom?of?the?file? and?copy?the?socket=?line?under?the?[mysqld]?section?such?as: [client] socket=/var/lib/mysql/mysql.sock
發現依舊如此,運行/etc/init.d/mysql start報錯:Starting MySQLCouldn’t find MySQL manager or server是mysqld服務沒啟,運行/usr/local/mysql/bin/mysqld_safe &
問題解決。
總結
? 版權聲明
文章版權歸作者所有,未經允許請勿轉載。
THE END