解決Linux MySQL報錯ERROR 2002

來源:互聯網
上載者:User

標籤:through   server   error   linux   local   

在Linux安裝MySQL有時候會出現[mysql]ERROR 2002 (HY000): Can‘t connect to local MySQL server through socket ‘/var/lib/mysql/mysql.sock‘ (2) 這樣的錯誤,具體解決辦法如下:

[[email protected] ~]# rm -rf /var/lib/mysql/*
[[email protected] ~]# rm /var/lock/subsys/mysqld
rm: remove regular empty file `/var/lock/subsys/mysqld‘? y
[[email protected] ~]# killall mysqld
[[email protected] ~]#  service mysqld start
[[email protected] ~]# /etc/rc.d/init.d/mysqld status
mysqld (pid 5457) is running...

---------------------------------2---------------------------------

[[email protected] /]# mysql -u root
ERROR 2002 (HY000): Can‘t connect to local MySQL server through socket ‘/tmp/mysql.sock‘ (2)
[[email protected] /]# vi /etc/my.cnf
##########添加如下內容:
[client]
socket=/var/lib/mysql/mysql.sock


##########儲存退出後,
##########重啟mysql
[[email protected] /]# service mysqld restart
Shutting down MySQL.                                       [  OK  ]
Starting MySQL.                                            [  OK  ]

[[email protected] /]# mysql -u root -p
Enter password:
ERROR 1045 (28000): Access denied for user ‘root‘@‘localhost‘ (using password: YES)
[[email protected] /]# mysql -u root
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 2
Server version: 5.1.45 MySQL Community Server (GPL)

Type ‘help;‘ or ‘\h‘ for help. Type ‘\c‘ to clear the current input statement.

mysql>GRANT ALL PRIVILEGES ON *.* TO ‘root‘@‘%‘ IDENTIFIED BY ‘rootpassword‘ WITH GRANT OPTION;

Query OK, 0 rows affected (0.00 sec)

mysql>GRANT ALL PRIVILEGES ON *.* TO ‘root‘@‘localhost‘ IDENTIFIED BY ‘rootpassword‘ WITH GRANT OPTION;

exit
Bye
[[email protected] /]# mysql -u root -p

---------------------------------3---------------------------------

當使用者在執行mysql時報錯
"ERROR 2002 (HY000): Cant connect to local MySQL server through socket /tmp/mysql.sock (2)"
 
原因是由於mysql 的mysql.sock 預設是在/var/lib/mysql/mysql.sock下,但linux系統總是去/tmp/mysql.sock尋找,如果mysql.sock不存在,系統就會報錯。
 
解決辦法:
1.直接指定mysql通道
[[email protected] ~]# find / -name mysql.sock
/var/lib/mysql/mysql.sock
[[email protected] ~]# mysql --socket=/var/lib/mysql/mysql.sock
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 2 to server version: 5.0.22
 
Type help; or \h for help. Type \c to clear the buffer.
 
mysql>
 
2. 為mysql.sock建立軟串連(類似捷徑)
[[email protected] ~]# ln -s /var/lib/mysql/mysql.sock /tmp/mysql.sock
 
[[email protected] ~]# mysql
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 3 to server version: 5.0.22
 
Type help; or \h for help. Type \c to clear the buffer.
 
mysql>


本文出自 “江湖笑笑生” 部落格,請務必保留此出處http://hashlinux.blog.51cto.com/9647696/1786121

解決Linux MySQL報錯ERROR 2002

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.