我停电了。现在 MySQL 的锁定文件不会消失。你有什么建议?

我停电了。现在 MySQL 的锁定文件不会消失。你有什么建议?

我为多伦多、加拿大和世界各地的各种客户提供自由 IT 咨询服务。

一位客户最近遭遇了电源故障。现在,他们的一台 Slackware 12.0.0 机器(同时充当 DNS 服务器)出现了各种问题。

一个问题是他们无法登录phpMyAdmin。

我尝试停止并重新启动 MySQL。但即使 MySQL 停止了,锁定文件仍然存在。

jasonspiro@cybertron:~$ sudo /etc/init.d/mysql stop 
Shutting down MySQL. SUCCESS! 
jasonspiro@cybertron:~$ sudo /etc/init.d/mysql stop
 ERROR! MySQL manager or server PID file could not be found!
jasonspiro@cybertron:~$ sudo /etc/init.d/mysql status
 ERROR! MySQL is not running, but lock exists
jasonspiro@cybertron:~$ ls -l /var/lock/subsys/mysql 
-rw-r--r-- 1 root root 0 2012-07-05 16:18 /var/lock/subsys/mysql

尽管 MySQL 没有运行,为什么 MySQL 的锁文件仍然挂起?

我可以简单地停止 MySQL、删除锁文件并重新启动 MySQL 吗?

我下一步还应该采取其他措施吗,或者什么都不要做?

编辑: 在我问了这个问题之后不久,我注意到这台机器上安装 MySQL 的方式似乎不太对劲。另外,我发现/etc/init.d/mysql我在这台机器上找到的脚本在启动 MySQL 时总是创建一个锁定文件,而在停止 MySQL 时从不删除该文件。所以这个问题对我来说无关紧要。谢谢,但我不需要更多答案。

答案1

做:ls -al /var/lock/subsys

查找mysql.pid。删除它。mysql.sock如果存在也删除。

如果其他方法都失败了,请 [以 root 身份] 使用updatedb ; locate <filename>。在这种情况下,这是您的好朋友。

尝试使用 init 脚本重新启动 MySQL。如果不起作用,请从可接受的数据库备份恢复到数据库检查点。

如果不存在数据库备份:尽快克隆此磁盘dd。您可能需要使用一些硬核恢复程序。即使 MySQL 服务重新启动,也要保存已知最佳的备份一段时间,以防万一。

相关内容