Sam*_*ing 6 mysql debian socket
昨晚,我的 MySQL 服务器意外宕机。在尝试重新启动(使用service mysql restart
- 我是 root)时,它只是挂起。通过mysql -u root -p
命令,我得到ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)
. 然后我尝试手动启动守护程序 ( 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
,touch /var/run/mysqld/mysqld.sock.lock
和apt-get install mysql-community-server --reinstall
。没运气。
我环顾四周,找不到解决方案。这里有什么帮助吗?
注意:我正在使用 MySQL 社区服务器 5.7.10 运行 Debian 8 (Jessie)
小智 11
对未来旅行者的注意:这取决于您的具体配置,但这很可能是 apparmor 的问题。如果您不想禁用锁定,请查看系统日志,看看您是否在该文件上收到 apparmor 拒绝。
你会看到类似的东西: apparmor="DENIED" operation="open" parent=29871 profile="/usr/sbin/mysqld" name="/run/mysqld/mysqld.sock.lock"
并且可以通过添加/run/mysqld/mysqld.sock.lock rw
到/etc/apparmor.d/usr.sbin.mysqld
其他/run/*
条目附近并重新加载apparmor来修复它。
固定的。将skip-external-locking添加到my.cnf
该[mysqld]
部分下,然后重新启动整个系统。对于任何发现这个问题的人来说,这应该可以解决这个问题。此外,如果您备份了数据,然后尝试恢复并被告知要rm ib*
使其正常工作,则您需要该ibdata
文件。
归档时间: |
|
查看次数: |
14141 次 |
最近记录: |