虚拟机上Mysql突然不能自动启动了
问题描述
启动项目时一直连不上mysql,登录虚机后执行ps -ef | grep mysql发现没有mysql进程,说明mysql没有启动
环境:centos7,MySQL Community Server 8.0.35
解决步骤
一、确认MySQL是否安装为系统服务
因为在这之前mysql都是能自动启动的,而且最近没有修改过配置,MySQL应该安装为系统服务了
systemctl list-unit-files | grep mysqld
如果没有输出说明没有安装为系统服务,我的输出
mysqld.service enabled
mysqld@.service disabled
二、检查服务状态
systemctl status mysqld
看看 Active 状态 是不是 failed,或者有没有报错日志。
三、检查开机自启配置
systemctl is-enabled mysqld
如果不是 enabled,则需要开启:
sudo systemctl enable mysqld
四、查看日志
sudo journalctl -u mysqld -xe
可以看到启动失败,但没有明确的日志。
再查看mysql日志
sudo tail -200f /var/log/mysqld.log
日志中可以看到
2025-09-20T00:14:06.027937Z 0 [ERROR] [MY-010259] [Server] Another process with pid 1451 is using unix socket file.
2025-09-20T00:14:06.028030Z 0 [ERROR] [MY-010268] [Server] Unable to setup unix socket lock file.
2025-09-20T00:14:06.028074Z 0 [ERROR] [MY-010119] [Server] Aborting
linux中socket也有对应的文件,mysqld 异常退出,可能没删掉,导致下次启动报错。
五、解决方案
删除多余的socket lock file
sudo rm -rf /var/lib/mysql/mysql.sock
重启mysql
sudo systemctl start mysqld
💬 评论 (0)
分享你的想法和见解
请 后发表评论
还没有评论,快来发表第一条评论吧!