MySQL已经死了,但子系统被locking

我在Linux(RHEL 5.0)上第一次使用PHP-mysql
当我尝试使用mysqli_connect从我的PHP脚本连接到MySQL时。
它显示以下错误:

Can't connect to local MySQL server through socket '/var/mysql/mysql.sock'(2) 

谷歌search了一小时后,我发现这个解决scheme如此处所述。

当我按照这个方法发出命令时:

 service mysqld status 

作为root用户,我得到: mysql is dead but subsys locked任何一个知道如何解决这个问题,并导致这个错误?

  • 重新启动
  • 开始
  • 并停止MySQL

输出为: FAILED
但是PHP工作正常。 我testing了phpinfo(); 演示。
我已经在/usr/local/mysql/bin安装了MySQL。 任何人都可以帮助我吗? 任何帮助表示赞赏。

提前致谢。

我尝试更新到大型软件包后,我的OTRS服务器出现了这个问题。

解决方案是:

复制安全:

 cp /var/lock/subsys/mysqld /root/mysqld 

比删除它

 rm /var/lock/subsys/mysqld 

比关闭所有依赖于mysql的服务:

 service httpd stop service otrs stop 

之后:

 service mysqld restart service httpd restart service otrs restart 

系统是CentOS 6.x

  1. 尾/var/log/mysqld.log来检查错误日志
  2. 然后执行以下操作:

    rm /var/lock/subsys/mysqld chown -R mysql.mysql /var/run/mysqld

 service mysqld restart 

只需重新启动在CentOS上工作的mysqld。

首先,确保/etc/init.d/mysqld从/ usr / local / mysql / bin运行,然后kill mysqld,删除锁定文件并重新启动它。

重新启动服务器为我工作。 请记住,如果您没有为它们添加“chkconfig”,请重新启动所有服务,例如httpd,named和mysql。

如果你有一个完整的磁盘,这个(以及其他各种奇怪的错误)也会发生。 在我的情况下,我的/ var分区已经填满了。 释放空间允许mysqld重新启动。

我使用命令kill,一步一步:

  1. 使用命令service mysqld status查找PID mysqld
  2. kill -9 PID
  3. 再次使用命令服务mysqld status来查找PID mysqld
  4. 杀死-15 PID
  5. 再次检查命令服务mysqld状态,检查直到PID失效子系统被锁定
  6. 使用命令服务mysqld start

首先找到mysqld的PID号码:

1.使用top | grep mysqld
2.杀-9 PID

安全的方法,使用Cent OS正常工作