今天在linux中启动mysql时提示mysql Starting MySQL…The server quit without updating PID file
从网上找了一堆方法如下:
可能是pid文件没有写的权限
解决方法: 给予权限,执行chown -R mysql:mysql datadir
然后重新启动mysql可能进程里已经存在mysql进程
解决方法: 用命令ps -ef|grep mysqld
查看是否有mysqld进程,如果有使用kill -9 进程号
杀死,然后重新启动mysql可能是第二次在机器上安装mysql,有残余数据影响了服务的启动
解决方法: 去mysql的数据目录看看,如果存在mysql-bin.index
,删除并重启mysql试试mysql在启动时没有指定配置文件时会使用
/etc/my.cnf
配置文件,请打开这个文件查看在[mysqld]节下有没有指定数据目录(datadir)
解决方法: 请在[mysqld]下设置这一行:datadir = /opt/data
skip-federated字段问题
解决方法: 检查一下/etc/my.cnf
文件中有没有没被注释掉的skip-federated
字段,如果有就注释掉错误日志目录不存在
解决方法: 使用chown
chmod
命令赋予mysql所有者及权限selinux惹的祸,如果是centos系统,默认会开启selinux
解决方法:getenforce
检查是否开启状态。如要关闭,先setenforce 0
,再修改/etc/selinux/config,把SELINUX=enforcing
改为SELINUX=disabled