ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock'

ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock'

该问题十分有效地解决方案:

$ mysql -u root -p  出现上述问题,mysql数据库连接不上。

$ mysql -h 127.0.0.1 -u root -p  能够登录得上mysql数据库。

ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock'_第1张图片

遇到上述问题的同志们,我建议直接参考我的第二次和第三次的出错经历,可能效果会更好!!!应该会问题迎刃而解!!!

第一次:

第一次遇到这个问题时感觉还是挺复杂的,查询了很多内容都暂时无法解决,然后我参考了下面这两个内容就解决了:

分别执行下面两个过程内容:

(1)步骤1:

主要是参考两个链接:

https://blog.csdn.net/lmss82/article/details/4414178

上面这个链接主要参考的是方法1的内容。

(2)步骤2:

https://blog.csdn.net/u010320710/article/details/42455123

于是我又使用上面链接的方法重新更新装载了一下mysql。

(3)步骤3:

重启mysql数据库。

于是问题就解决了。

 

第二次:

又出现了这个问题,好像是没有从根本上解决这个问题。这次使用同样的方法然而并没有有效地把问题解决。于是我就又陷入了各种百度查找之中!

幸好看到一个很实在的同志写的一个博客:https://www.cnblogs.com/zlslch/p/7106221.html

(1)在/etc/mysql目录下找到my.cnf文件打开。

(2)打开文件发现被重定向到其他文件夹下了。

ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock'_第2张图片

 (3)然后继续寻找就找到了这个目录下的内容存在[mysqld]项。

(4)打开添加protocol = tcp。注意不要像我一样弱智,刚开始把tcp写成了top!!!其实我是早就该解决了问题,就是把tcp不小心写成了top,导致又各种查找解决问题的方法才解决!

ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock'_第3张图片

(4)重启mysql服务器。service mysql restart。然后就一切ok了。

 

第三次:

(接第二次)

(1)不知怎么地,回去睡觉之后,回来工作后,登录服务器mysql数据库。结果又出现了另外一个意想不到的问题。

(图当时我没保存)就使用这个链接的图片吧。https://blog.csdn.net/qq_32846595/article/details/70214271

ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock'_第4张图片

(2)于是我就照着上面的这个博客内容。执行了一下下面这条命令,

apt install mysql-client-core-5.7

(3)结果还是出现了这个问题,结果我心里一喜,不还是第二次遇到的那个错误吗,我对着改不就行了?

 (4)接着打开mysql文件夹后,出现了一个很是奇怪的问题:只剩下了下图被标记的这个文件,其他文件都没有了。(由于当时遇到问题的时候没有截图保存问题图片,现在只能口述了。)

过程中我猜想是不是刚才更新内容的时候,导致安装的mysql到其他的位置了,我就搜索whereis mysql结果还是定向到/etc/mysql文件夹下。

(5)这次有点着急了,什么my.cnf、conf.d、mysql.conf.d 都没有了。这怎么按照第二次的方法做呢?完全不能够啊!

于是我就着急执行了第一次遇到问题的操作。更新了一下,在终端输入sudo  apt-get install mysql-server。

叹了一口气终于找回来了!所有文件内容。但是我发现之前修的内容都没有了。

(6)于是接着我又开始执行了第二次的过程。结果还是不行!!!

(7)后来我同时修改了conf.d文件下的mysql.cnf文件,在这个文件下面同样输入protocol = tcp内容,然后问题解决了!

 

 

 

(8)然后再看看能不能行:

ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock'_第5张图片

然后,解决了!!!

担心后面还会遇到其他问题。。。

这个问题花费了我好大一会功夫才解决,虽然现在看起来解决方法比较简单,但是确实是花费了我一段时间去解决!

在此再次感谢一下这个博客博主。参考链接:https://www.cnblogs.com/zlslch/p/7106221.html

 

你可能感兴趣的:(mysql数据库)