问题描述
mysqld.pid一直被删除,mysql服务一直无法启动成功
解决方案(一次踩坑的经历,小伙伴们可以试试)
- 在服务启动失败后我这边进行了数据库初始化的操作,因为是服务器重启了导致mysql挂了,所以看看是不是没有初始化导致的
- 在初始化的时候有几条ERROR报错,第一个是说data目录里面的数据是存在的所以进行初始化的时候报错了,在下面发现ERROR是出现了bin-log的一个报错,这个报错说的是没有提供server-id所以我们可以在/etc/my.cnf配置文件里面在[mysqld]的字段下添加一个server-id=1的参数因为开启了bin-log就需要配置一个server-id
- 这里配置完成后我是进行的重新初始化,没有直接运行mysql服务(感觉不用初始化应该也能启动)
在配置了server-id之后,我们将新生成的data用户所有者的所有组更为mysql:mysql(这里说一下,初始化之后一定要更改组和所有者,要不也会导致mysql无法启动)
chown -R mysql:mysql data
- 启动mysql服务,就可以正常启动了
这里说一下,mysql的服务启动不了大部分的报错都是提示The server quit without updating PID file (/var/run/mysqld/mysqld.pid),我们再排查数据库无法启动的问题的时候记得关注每一个ERROR的细节