PHP8.1.21版本已发布
vue8.1.21版本已发布
jquery8.1.21版本已发布

mysql的2002错误是什么

WBOY
WBOY 原创
2022-08-31 17:04:39 11487浏览

在mysql中,2022错误指的是编译的时候没有指定socket,所以mysql命令连接的时候还是使用的默认值,因为socket位置变了,而mysql命令不知道,所以就出现了这样的错误,可以修改“/etc/my.cnf”文件来解决该错误。

本教程操作环境:windows10系统、mysql8.0.22版本、Dell G3电脑。

mysql的2002错误是什么

首先重现问题现象,报错提示如下:

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

33.png

报错分析,官网大致意思是说编译的时候没有指定socket,所以mysql 命令连接的时候还是使用的默认值(/tmp/mysql.sock),因为socket位置变了,而mysql 命令不知道,所以就出现了这样的错误

34.png

解决办法,告诉mysql 命令,我们的socket文件在什么地方。修改/etc/my.cnf 文件添加如下内容:

[mysqld]
socket=/data/mysql5.7.24/db_test/mysql.sock
[client]
socket=/data/mysql5.7.24/db_test/mysql.sock

35.png

保存后测试是否能正常登陆

mysql -uroot -p

36.png

另一种解决办法就是在登陆的时候指定socket。

第一种写法

mysql -uroot -p --socket=/data/mysql5.7.24/db_test/mysql.sock

第二种写法

mysql -uroot -p -S /data/mysql5.7.24/db_test/mysql.sock

推荐学习:mysql视频教程

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。