MySQL 提示:The server quit without updating PID file问题的解决办法

摘要:今天网站web页面提交内容到数据库,发现出错了,一直提交不了,数找了下原因,发现数据写不进去!第一反应,重启mysql数据库,一直执行中,停止不了也启动不了,直觉告诉我磁盘满了 !...

作者:LoveCode标签:mysql,启动失败

今天网站web页面提交内容到数据库,发现出错了,一直提交不了,数找了下原因,发现数据写不进去!第一反应,重启mysql数据库,一直执行中,停止不了也启动不了,直觉告诉我磁盘满了 !

用df命令查了下,果然磁盘满了,因为当时分区采用系统默认,不知道为什么不能自动扩容!以后在处理这个问题!如下所示:

[root@snsgou ~]# df
文件系统                 1K-块      已用      可用 已用% 挂载点
/dev/mapper/vg_snsgou-lv_root
51606140  47734848   1249852  100%      /
tmpfs                  1953396        88   1953308   1%           /dev/shm
/dev/sda1               495844     37062    433182   8%        /boot
/dev/mapper/vg_snsgou-lv_home
229694676    191796 217835016   1%       /home
[root@snsgou ~]#


删除了些没用的日志后,重新启动数据库还是出错。

[root@snsgou mysql]# service mysql restart
MySQL server PID file could not be found![失败]
Starting MySQL...The server quit without updating PID file (/usr/local/mysql/data/snsgou.pid).[失败]


百度了下 ,问题可能的原因有多种,具体什么原因最好的办法是先查看下错误日志: 

1、可能是/usr/local/mysql/data/mysql.pid文件没有写的权限 解决方法 :给予权限,执行:

chown -R mysql:mysql /var/data
chmod -R 755 /usr/local/mysql/data

然后重新启动mysqld! 


2、可能进程里已经存在mysql进程 解决方法:用命令:

ps -ef|grep mysqld

查看是否有mysqld进程,如果有使用:

kill -9  进程号

杀死,然后重新启动mysqld! 


3、可能是第二次在机器上安装mysql,有残余数据影响了服务的启动。 解决方法:去mysql的数据目录/data看看,如果存在mysql-bin.index,就赶快把它删除掉吧,它就是罪魁祸首了。本人就是使用第三条方法解决的 ! 


4、mysql在启动时没有指定配置文件时会使用/etc/my.cnf配置文件,请打开这个文件查看在[mysqld]节下有没有指定数据目录(datadir)。 解决方法:请在[mysqld]下设置这一行:

datadir = /usr/local/mysql/data


5、skip-federated字段问题 解决方法:检查一下/etc/my.cnf文件中有没有没被注释掉的skip-federated字段,如果有就立即注释掉吧。 


6、错误日志目录不存在 解决方法:使用“chown” “chmod”命令赋予mysql所有者及权限 


7、selinux惹的祸,如果是centos系统,默认会开启selinux 解决方法:关闭它,打开配置文件:

vim /etc/selinux/config

把:

SELINUX=enforcing

改为:

SELINUX=disabled

后存盘退出重启机器试试。

CopyRight © 2017 荒山本的官方网站 粤ICP备16049175号 All Right Service 网站地图(xml) 网站地图(html)