现在的位置: 首页 > 综合 > 正文

Linux下MySQL启动失败

2014年08月03日 ⁄ 综合 ⁄ 共 1340字 ⁄ 字号 评论关闭

MySQL 通过/usr/share/mysql/mysql.server 可以启动,但是将/usr/share/mysql/mysql.server
拷贝到/etc/init.d/mysql 下,/etc/init.d/mysql 启动确报如下错误。并且没有记入错误日志。

启动报的错误信息如下:The
server quit without updating PID file (/usr/local/mysql/data/localhost.pid)


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

1.可能是/usr/local/mysql/data/rekfan.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,就赶快把它删除掉吧,它就是罪魁祸首了。本人就是使用第三条方法解决的 !http://blog.rekfan.com/?p=186

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
解决方法:关闭它,打开/etc/selinux/config,把SELINUX=enforcing改为SELINUX=disabled后存盘退出重启机器试试。

****************************************************************************************************************************

我这次启动失败是selinux惹的祸惹的祸。排除方式:可以尝试 暂时把selinux设置成无效 执行命令setenforce 0,再启动mysql试试 如果还启动不了的话 就应该不是selinux的问题。

执行执行命令setenforce 0,后mysql可以启动。连接数据库都没问题。但是当我改回去执行命令:setenforce 1  时,重新启动mysql,mysql还是启动不了,报之前的错误。通过这个操作,应该是与selinux的有关吧。

抱歉!评论已关闭.