最近又掉进mysql的坑里了……我看见一个超好的解决mysql ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock'这个报错的帖子。可以直接打开https://www.jb51.net/article/174244.htm
但是跟我的阅读理解习惯不太一样,我自己整理份我自己理解的。
报错原因
有可能是 my.cnf 配置文件中设置了 [mysqld] 的 socket 参数,而没有设置[client]的 socket 参数。
首先,如果报错可以尝试以下方式连接
TCP 连接:
mysql -uroot -h 127.0.0.1 -p
mysql -u[用户名] -h [IP地址] -p
-p是passwd
socket 连接:
mysql -uroot -p
mysql -u[用户名] -p
-p是passwd
解决方案
vi /etc/my.cnf
[mysqld]
socket=/usr/local/mysql/lib/mysql.sock(把[client]的配置跟这个socket路径一样)
[client]
port=3306
socket=/usr/local/mysql/lib/mysql.sock
参考博客:
https://www.jb51.net/article/174244.htm
感谢博主大大救命之恩