【发布时间】:2016-04-29 12:15:28
【问题描述】:
昨晚,我的 MySQL 服务器意外停机。在尝试重新启动时(使用service mysql restart - 我是 root)它只是挂起。使用mysql -u root -p 命令,我得到:
ERROR 2002 (HY000): 无法通过套接字 '/var/run/mysqld/mysqld.sock' (2) 连接到本地 MySQL 服务器。
然后我尝试手动启动守护进程 (mysqld)。提示将挂起约 2 秒,然后返回。在仔细检查错误日志后,我得到:
2016-01-22T19:18:32.399584Z 0 [ERROR] Could not create unix socket lock file /var/run/mysqld/mysqld.sock.lock.
2016-01-22T19:18:32.399622Z 0 [ERROR] Unable to setup unix socket lock file.
2016-01-22T19:18:32.399646Z 0 [ERROR] Aborting
然后我尝试了chown mysql /var/run/mysqld、chmod -R 775 /var/run/mysqld 和apt-get install mysql-community-server --reinstall。没有运气。
我环顾四周,找不到解决方案。这里有什么帮助吗?
注意:我正在使用 MySQL 社区服务器 5.7.10 运行 Debian 8 (Jessie)
【问题讨论】:
-
运行这个:
touch /var/run/mysqld/mysqld.sock.lock和更高版本的service mysql start.... -
抱歉,这不起作用 - 我在日志文件中遇到同样的错误 (
[ERROR] Could not create unix socket lock file /var/run/mysqld/mysqld.sock.lock.) -
尝试运行:
chmod -R 755 /var/run/mysqld/ -
你读过这篇文章吗?我说我做到了。无论如何,它现在已经修复:serverfault.com/questions/751277/mysql-daemon-lock-issue。我想我应该在这里更新它。
-
对于仅在手动运行 mysqld 以重置 root 密码时遇到此问题的任何人,请改用
mysqld_safe --skip-grant-tables。