mysql start 失败怎么办

文 / @WordPress主题

当我们启动MySQL数据库时,可能会遇到启动失败的情况,这时候我们该怎么办呢?本文将从操作环境、问题现象和解决方案三个方面来介绍解决方法。

一、操作环境
本文中操作环境是Windows7系统,MySQL版本为5.5版,电脑型号为Dell G3电脑。

二、问题现象
当我们尝试重启服务器后,重启应用服务(Confluence)时,会出现数据库连接失败的情况,因为MySQL设置了开机自启动。此时我们需要查看MySQL数据库状态,输入命令"ps -ef|grep mysql",却发现启动MySQL服务器失败,报错信息为:MySQL server PID file could not be found! Starting MySQL.............. ERROR! The server quit without updating PID file (/mydata/data/fisheye..pid)。此时我们查看错误日志,发现没有明显性错误提示,于是手动创建一个pid文件,再进行重启服务,结果还是启动失败。最后我们发现磁盘空间不足是导致MySQL无法启动的原因。

三、解决方案
接下来我们来介绍针对此类无法启动的问题的解决方案。

1.可能是datadir目录存在的分区满了(df -h)
解决方法:打开配置文件/etc/my.cnf,在[mysqld]节下重新指定数据目录(datadir),并将原来的数据目录迁移到重新制定的数据目录处。

2.可能是/mydata/data/fisheye.pid文件没有写的权限
解决方法:给予权限,执行“chown -R mysql:mysql /mydata/data/”然后重新启动mysqld。

3.可能进程里已经存在mysql进程
解决方法:用命令“ps -ef|grep mysqld”查看是否有mysqld进程,如果有使用“kill -9 进程号”杀死,然后重新启动mysqld。

4.可能是第二次在机器上安装mysql,有残余数据影响了服务的启动
解决方法:去MySQL的数据目录/data看看,如果存在mysql-bin.index,就删除掉。

5.skip-federated字段问题(报错信息:[ERROR]/mydata/data/mysql/libexec/mysqld:unknown option '--skip-federated')
解决方法:检查一下/etc/my.cnf文件中有没有没被注释掉的skip-federated字段,如果有就注释掉。

6.selinux惹的祸,如果是CentOS系统,默认会开启selinux
解决方法:关闭它,打开/etc/selinux/config,把SELINUX=enforcing改为SELINUX=disabled后存盘退出重启机器。

以上就是MySQL启动失败解决方案的详细内容,希望对大家有所帮助。

添加UTHEME为好友
扫码添加UTHEME微信为好友
· 分享WordPress相关技术文章,主题上新与优惠动态早知道。
· 微信端最大WordPress社群,限时免费入群。