无法通过socket' /var/lib/mysql/mysql.sock&#39连接本地MySQL服务器;(111)即使/var/lib/mysql/mysql.sock存在也是如此

时间:2017-12-01 00:26:45

标签: mysql centos7

无法通过socket' /var/lib/mysql/mysql.sock'连接到本地MySQL服务器;甚至/var/lib/mysql/mysql.sock也存在。

手头的事情:

  • my.cnf文件指向/var/lib/mysql/mysql.sock。
  • 允许所选用户读取/执行mysql.sock。
  • 以前mysql正在运行。我检查了它说的日志文件"数据库没有正常关闭"。

事情无法做到: mysql.sock不可下载。 我假设mysql.sock有问题。

感谢您的回答。

2 个答案:

答案 0 :(得分:0)

尝试搜索文件" my.cnf",通常位于文件夹" / etc / mysql /"中。创建备份作为预防措施。 像这样编辑:

socket   = /var/run/mysql/mysql.sock
port     = 3306
basedir  = /usr

并且,请确认您的用户是否可以阅读" mysql.sock"。

答案 1 :(得分:0)

促使我退出该错误的原因是:

rm -rf /var/lib/mysql
rm -rf /var/run/mysqld
mkdir -p /var/lib/mysql /var/run/mysqld
chown -R mysql:mysql /var/lib/mysql /var/run/mysqld
# ensure that /var/run/mysqld (used for socket and lock files) is writable regardless of the UID our mysqld instance ends up having at runtime
chmod 777 /var/run/mysqld

我在hub.docker.com中的mysql 8.0的Dockerfile中得到了这个答案: https://github.com/docker-library/mysql/blob/3362baccb4352bcf0022014f67c1ec7e6808b8c5/8.0/Dockerfile