linux mysql dbs.pid_解决Linux下MySQL启动错误Starting MySQL.Manager of pid

上午刚装完MySQL,启动时报如下错误:

Starting MySQL.Manager of pid-file quit without updating file.[FAILED]

75874464_1

依次尝试了从谷姐找到的各种方法,发现只要执行如下MySQL初始化命令即可解决:

Shell

1

/usr/local/mysql/bin/mysql_install_db --user=mysql

75874464_2

下面附上从谷姐找到的解决此问题的方法集锦,也许每个人遇到的问题的原因会不一样,经供参考:

一、查看报错日志

报错日志是我们解决问题的方向灯,没有方向灯我们就没了方向。

我有次安装时报错日志里就有这样的错误:

Shell

1

/usr/local/mysql/bin/mysqld: error while loading shared libraries: libstdc++.so.5: cannot open sharedobject file: No such file or directory

很明显是缺少了库文件 libstdc++.so.5 ,这时我们搜索和libstdc相关的包安装即可。

二、也许是selinux惹的祸

如果是centos系统,默认会开启selinux,这个时候可以先关闭它,打开/etc/selinux/config,把SELINUX=enforcing改为SELINUX=disabled后存盘退出重启机器试试。

三、残余数据

也有可能是第二次在机器上安装mysql,有残余数据影响了服务的启动,去mysql的数据目录/data看看,如果存在mysql-bin.index,就赶快把它删除掉吧,它就是罪魁祸首了。

四、确定数据目录的权限

数据目录一般是/data,检查一下它的归属,如果不是mysql所有者,一般安装mysql时都会创建mysql的用户和组的,这时要修改一下用户和组:

chown -R mysql:mysql /var/data

五、没有指定数据目录

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

datadir = /usr/local/mysql/data

六、还有mysql进程在跑着

如果这是第二次在机器上安装mysql就极有可能会出现这种情况的,这时系统上很有可能还有mysql进程在运行着。可以执行下列命令查看:

ps -ef | grep mysql

如果出现的结果不止一行的就赶快把它kill掉吧。

七、skip-federated字段在作祟

可以检查一下/etc/my.cnf文件中有没有没被注释掉的skip-federated字段,如果有就立即注释掉吧。

八、出错日志目录不存在

也有可能你现在还不知道mysql的出错日志在哪里吧?这时你可以执行命令查看:

Shell

1

2

cd mysql/bin

./mysql_safe

这时一定会报错的, 并在错误中显示将错误写在某某目录的某某文件里了,这里检查一下这个目录和文件是否在,在的话就按日志指示解决,如果没有的话就要创建目录并修改权限和归属了。一般会是/var/lib/mysql/mysql.error,注意mysql.error不用创建的。

Shell

1

2

3

4

cd /var/lib

mkdir mysql

chmod 777 mysql

chown mysql:mysql mysql

这时再试试吧。如果还是不行的话就留言让大家帮你看看吧……

九、可能是data/mysql-bin.index在作怪

前因:因为硬盘满了,mysql启动不起来了。登录上去看了一下,发现原因。删除mysql的日志文件,重启mysql发现错误:Starting MySQL.Manager of pid-file quit without updating file.[FAILED]

网上有不少这个原因的解释,但是都不是我想说的。我要说的原因其实很白痴:data/mysql-bin.index没有删除,data/mysql-bin.index是存放日志文件索引的文件,只删除了日志文件而没有对日志的索引文件做处理显然是不行的。

删除data/mysql-bin.index文件,再service mysqld start就可以了。上午刚装完MySQL,启动时报如下错误:

Starting MySQL.Manager of pid-file quit without updating file.[FAILED]

75874464_1

依次尝试了从谷姐找到的各种方法,发现只要执行如下MySQL初始化命令即可解决:

Shell

1

/usr/local/mysql/bin/mysql_install_db --user=mysql

75874464_2

下面附上从谷姐找到的解决此问题的方法集锦,也许每个人遇到的问题的原因会不一样,经供参考:

一、查看报错日志

报错日志是我们解决问题的方向灯,没有方向灯我们就没了方向。

我有次安装时报错日志里就有这样的错误:

Shell

1

/usr/local/mysql/bin/mysqld: error while loading shared libraries: libstdc++.so.5: cannot open sharedobject file: No such file or directory

很明显是缺少了库文件 libstdc++.so.5 ,这时我们搜索和libstdc相关的包安装即可。

二、也许是selinux惹的祸

如果是centos系统,默认会开启selinux,这个时候可以先关闭它,打开/etc/selinux/config,把SELINUX=enforcing改为SELINUX=disabled后存盘退出重启机器试试。

三、残余数据

也有可能是第二次在机器上安装mysql,有残余数据影响了服务的启动,去mysql的数据目录/data看看,如果存在mysql-bin.index,就赶快把它删除掉吧,它就是罪魁祸首了。

四、确定数据目录的权限

数据目录一般是/data,检查一下它的归属,如果不是mysql所有者,一般安装mysql时都会创建mysql的用户和组的,这时要修改一下用户和组:

chown -R mysql:mysql /var/data

五、没有指定数据目录

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

datadir = /usr/local/mysql/data

六、还有mysql进程在跑着

如果这是第二次在机器上安装mysql就极有可能会出现这种情况的,这时系统上很有可能还有mysql进程在运行着。可以执行下列命令查看:

ps -ef | grep mysql

如果出现的结果不止一行的就赶快把它kill掉吧。

七、skip-federated字段在作祟

可以检查一下/etc/my.cnf文件中有没有没被注释掉的skip-federated字段,如果有就立即注释掉吧。

八、出错日志目录不存在

也有可能你现在还不知道mysql的出错日志在哪里吧?这时你可以执行命令查看:

Shell

1

2

cd mysql/bin

./mysql_safe

这时一定会报错的, 并在错误中显示将错误写在某某目录的某某文件里了,这里检查一下这个目录和文件是否在,在的话就按日志指示解决,如果没有的话就要创建目录并修改权限和归属了。一般会是/var/lib/mysql/mysql.error,注意mysql.error不用创建的。

Shell

1

2

3

4

cd /var/lib

mkdir mysql

chmod 777 mysql

chown mysql:mysql mysql

这时再试试吧。如果还是不行的话就留言让大家帮你看看吧……

九、可能是data/mysql-bin.index在作怪

前因:因为硬盘满了,mysql启动不起来了。登录上去看了一下,发现原因。删除mysql的日志文件,重启mysql发现错误:Starting MySQL.Manager of pid-file quit without updating file.[FAILED]

网上有不少这个原因的解释,但是都不是我想说的。我要说的原因其实很白痴:data/mysql-bin.index没有删除,data/mysql-bin.index是存放日志文件索引的文件,只删除了日志文件而没有对日志的索引文件做处理显然是不行的。

删除data/mysql-bin.index文件,再service mysqld start就可以了。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值