admin 管理员组文章数量: 1184232
Linux版本:Centos7
在解决这个问题之前,先确保已经对MySQL完成了初步的设置。详情可看BV1qS4y1h77S
该问题出现的原因
客户端 (mysql) 和 服务器 (mysqld) 配置的套接字文件(socket)路径不一致。
解决步骤
1、先检查mysqld是否正常运行,下图所示情况为正常。
systemctl status mysqld
输出结果:
2、检查配置文件中socket的路径。
cat /etc/myf|grep socket
输出结果:
socket=/var/lib/mysql/mysql.sock
3、使用--socket参数指定正确的路径。在连接时,明确告诉 mysql 客户端应该连接哪个 socket 文件。
mysql -u root -p --socket=/var/lib/mysql/mysql.sock
如果连接正常就进行下一步,否则是由其他原因导致,可以去看看其他人的教程。
4、修改MySQL配置文件,让客户端也使用正确的默认路径。
编辑/etc/myf文件,在[client]部分添加socket配置
sudo vim /etc/myf
修改后的内容如下:
# For advice on how to change settings please see
# http://dev.mysql/doc/refman/8.0/en/server-configuration-defaults.html
[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
# === 添加以下部分 ===
[client]
socket=/var/lib/mysql/mysql.sock
# ===================
5、最后进行连接测试即可。
mysql -u root -p
本篇博客到此结束,希望能对您有所帮助,感谢您的阅读。
本文标签: 解决方案 connect local error MySQL
版权声明:本文标题:ERROR 2002 (HY000): Can‘t connect to local MySQL server through socket ‘tmpmysql.sock独家解决方案 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.roclinux.cn/b/1766360892a3452575.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论