mysqld dead but subsys locked的解决方法

此文适用于MySQL和MariaDB及Debian/Ubuntu/CentOS/RHEL系列操作系统。

可能出现的错误:MySQL is unable to start.使用service...status命令检查服务状态会得出下面错误:

Debian/Ubuntu:

service mysqld status
mysqld dead but subsys locked

CentOS/RHEL:

service mariadb status
ERROR! MariaDB is not running, but lock file (/var/lock/subsys/mysql) exists

引起这个错误的原因:

1./var/lock/subsys/mysqld 文件已存在

ls /var/lock/subsys/mysqld
/var/lock/subsys/mysqld

2.服务器内存不够了

解决方法

1.删除文件/var/lock/subsys/mysqld

rm -f /var/lock/subsys/mysqld

2.使用free -m命令检查服务器当前内存开销情况,如果闲置内存超过200M就跳过此步

停止的服务根据实际情况来,如果你用的是apache则停止httpd,如果是nginx+php-fpm则停止相应的服务即可。

service httpd stop
service nginx stop 
service php-fpm stop

3.启动MySQL/MariaDB服务

Debian/Ubuntu:

service mysqld start

CentOS/RHEL:

service mariadb start

4.最后启动web相关服务

同步骤2,启动对应所需要的服务即可。

service httpd start
service nginx start
service php-fpm start

Post Comment