找不到mysql.sock,我在哪里可以找到它?

Cod*_*Med 6 mysql linux centos

在CentOS 7机器上,当我尝试从终端登录mysql时出现以下错误:

ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)
Run Code Online (Sandbox Code Playgroud)

然后,我尝试cd /var/lib/mysqlls -al,但由此产生的文件列表不包含mysql.sock. 那么我在哪里可以找到mysql.sock,如何解决此错误?

以下是我已经尝试过的一些事情:

1.)当我看到systemctl status mysqld显示mysql被停止时,我也尝试了systemctl start mysqld但是终端只是给了一个没有响应的光标而没有新的提示,好像它被等待某些东西,但它无限期地保持在那个边缘状态.

2.)所以我打开了另一个终端窗口并运行systemctl status mysqld,只是为了看到mysqld再次启动.但错误仍然存​​在.

3.)我试过,find / -name "mysql.sock"但回答是find: ‘/run/username/1000/gvfs’: Permission denied.

4.)然后我读了这篇文章并试过mysqladmin | grep d.sock但没有结果.

5.)我甚至采取了yum remove mysql跟随yum install mysql,但mysql -u root在此帖子的顶部仍然给出相同的原始错误.

6.)然后我读了这个其他帖子,但是mysqladmin variables给出了相同的错误,因为mysql.sock无法找到它无法连接.

7)我试过ln -s /tmp/mysql.sock /var/mysql/mysql.sock,但即使到MySQL的链接显形坚持同样的错误,当我试图cd /var/lib/mysql/ls -al

8.)由于问题可能与systemctl start mysqld挂断的事实有关,我读了这篇文章并尝试了chown -R mysql:mysql /var/lib/mysql,systemctl start mysqld但结果是Failed to issue method call: Unit mysqld.service failed to load: No such file or directory.

9.)然后我读了这篇帖子,这让我跑了mysql --help | grep "Default options" -A 1.结果打印出mysql寻找的位置my.cnf.因此我检查了每个位置,并且没有my.cnf找到文件.但我确实找到了mysql.cnf.rpmsave,所以我试过了mv mysql.cnf mysql.cnf.rmpsave.这导致my.cnf在预期的目录中有一个,但是systemctl status mysqldmysqld没有找到.我yum install mysql再次尝试,但它告诉我mysql已经安装了. 所以我怀疑新重命名的my.cnf已损坏.如果是这样,我该如何解决? 以下是指向my.cnf文件共享站点上新重命名的副本的链接.

Ale*_*ggs 1

意识到这是一篇旧帖子,但我自己刚刚遇到这个问题,发现很难找到正确的解决方案。我通过执行以下操作解决了这个问题:

  1. 安装zlib

    32-Bit Debian/Ubuntu: apt-get install zlib1g
    64-Bit Debian/Ubuntu: apt-get install lib32z1
    32/64-Bit Fedora: yum install zlib.i686
    32/64-Bit Mandriva: urpmi zlib1
    32-Bit SUSE: zypper install libz1
    64-Bit SUSE: zypper install libz1-32bit
    
    Run Code Online (Sandbox Code Playgroud)
  2. 如果您可以使用该选项,请连接到127.0.0.1而不是。localhost与 MySQL 连接 via127.0.0.1localhost使用不同的方法(前者为 TCP,后者为 Sock)

  3. 确保您的防火墙没有在内部阻止端口,也许可以考虑暂时禁用它以确保不会出现这种情况。