连接MySQL失败,errorNo=2002,Can't connect to local MySQL server through socket '/var/run/mysqld


问题:

在本地使用mysql -uroot -p可以登录mysql

代码运行mysql_real_connect函数,失败返回errorNo=2002(Can’t connect to local MySQL server through socket ‘/var/run/mysqld/mysqld.sock’ (2))

代码参数为localhost,根据返回错误,可知socket连接失败,排查连接失败的原因

 转载注明出处:https://www.cnblogs.com/linguinost/p/16136298.html

 

解决的办法:

修改/etc/my.cnf文件中sock的路径 

切换root,打开文件:vi /etc/my.cnf

按i进行编辑

根据错误提示路径,将socket=路径改为/var/run/mysqld/mysqld.sock

按esc退出编辑,shift :, wq,回车退出

service mysqld restart

再次尝试

如果使用软链接ln -s 原始sock路径  /var/run/mysqld/mysqld.sock 也可以解决问题,但是我重启后就失效了,以上方法重启后仍然有效

 

参考链接:https://phoenixnap.com/kb/mysql-server-through-socket-var-run-mysqld-mysqld-sock-2

 

原创文章,作者:bd101bd101,如若转载,请注明出处:https://blog.ytso.com/244801.html

(0)
上一篇 2022年4月17日
下一篇 2022年4月17日

相关推荐

发表回复

登录后才能评论