在CentOS 7机器上,当我尝试从终端登录mysql时出现以下错误:
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)
然后我尝试了cd / var / lib / mysql和ls -al,但生成的文件列表中没有包含mysql.sock.那么我在哪里可以找到mysql.sock以及如何解决此错误?
以下是我已经尝试过的一些事情:
1.)当我看到systemctl状态mysqld显示mysql被停止时,我也尝试了systemctl启动mysqld但是终端只是给了一个没有响应的游标而没有新的提示,好像它被等待了什么,但它仍然在那里无限期地陷入困境.
2.)所以我打开另一个终端窗口并运行systemctl status mysqld,只是为了看到mysqld再次启动.但错误仍然存在.
3.)我尝试查找/ -name“mysql.sock”,但响应是:’/ run / username / 1000 / gvfs’:权限被拒绝.
4.)然后我读了this posting并尝试了mysqladmin | grep d.sock但没有结果.
5.)我甚至使用yum删除mysql后跟yum install mysql,但是然后mysql -u root仍然在这个帖子的顶部给出了相同的原始错误.
6.)然后我读了this other posting,但mysqladmin变量给出了相同的错误,它无法连接,因为无法找到mysql.sock.
7.)我尝试了ln -s /tmp/mysql.sock /var/mysql/mysql.sock但是当我尝试使用cd / var / lib / mysql /和ls时,同样的错误仍然存在,即使mysql的链接变得可见 – 人
8.)由于问题可能与systemctl启动mysqld挂起的事实有关,我读了this posting并尝试了chown -R mysql:mysql / var / lib / mysql和systemctl启动mysqld但结果是无法发出方法调用:单元mysqld.service无法加载:没有这样的文件或目录.
9.)然后我读了this posting,这导致我运行mysql –help | grep“默认选项”-A 1.结果打印出mysql查找my.cnf的位置.因此我检查了每个位置,并且没有找到my.cnf文件.但我确实找到了mysql.cnf.rpmsave,所以我试了mv mysql.cnf mysql.cnf.rmpsave.这导致在预期的目录中有my.cnf,但systemctl状态mysqld表示找不到mysqld.我再次尝试yum install mysql,但它告诉我已经安装了mysql.所以我怀疑新重命名的my.cnf已损坏.如果是这样,我该如何解决? Here is the link在文件共享站点上新重命名的my.cnf的副本.