找回密码
 立即注册
首页 业界区 安全 Mysql:记录一次 【systemctl start mysqld】启动超级慢 ...

Mysql:记录一次 【systemctl start mysqld】启动超级慢、且启动有可能有问题的问题

庞悦 4 天前
环境
centos 7.4
mysql 5.7.21
 
背景
其他人安装的数据库。因要重新配置主从复制。涉及到mysqld服务重启。
 
问题
首先,第1次,通过systemctl stop mysqld 很顺利的关闭服务了。
然后,通过systemctl start mysqld 长时间卡住... 最后systemctl提示启动失败
  实际上,后台的mysqld进程已经起来了,mysqld.log 也显示启动成功了。
 
排查
可能的原因1)既然能够进入mysqld的服务,说明没有大问题,怀疑是innodb buffer 数据启动转储、加载的问题,关闭之,无效
innodb-buffer-pool-load-at-startup=0
innodb-buffer-pool-dump-at-shutdown=0
可能的原因2)journalctl -xe 提示“/var/run/mysqld/mysqld.pid not readable (yet?) after start.”, 怀疑文件系统权限不正确或路径不存在,经查,所有mysql数据库相关路径和文件的属主都是mysql;创建/var/run/mysqld目录并赋权后,问题依旧。不是它的事
可能的原因3)检查mysqld.log输出,无明显错误,有个用户权限的问题 “[Note] Access denied for user 'UNKNOWN_MYSQL_USER'@'localhost' (using password: NO)”【todo todo】,不经过systemctl 而直接通过mysqld启动,可以启动;而且这只是个note级别的信息,排除之。 todo
 可能的原因4)再再再仔细分析journalctl -xe 提示“/var/run/mysqld/mysqld.pid not readable (yet?) after start.”,突然想到可能是 systemctl 检查服务状态的pid文件 可能与用户自己配置的pid-file路径不一致!!! 修改/etc/my.cnf中pid-file的路径与systemctl提示一致【更简单的:用户不要配置这个pid-file参数】,问题解决!
 
最终原因
systemctl 调用的 mysqld.service服务脚本 它所检查的关键pid文件路径 与 用户my.cnf的配置不一致!
 
定性:
这个mysql-v5.7.21版本的rpm包 有bug或用户自行部署的mysqld.service服务脚本不完善
 

来源:程序园用户自行投稿发布,如果侵权,请联系站长删除
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!

相关推荐

11 小时前

举报

懂技术并乐意极积无私分享的人越来越少。珍惜
您需要登录后才可以回帖 登录 | 立即注册