升级Ubuntu 24.04时dpkg配置MySQL卡住的问题求助
升级Ubuntu 24.04时dpkg配置MySQL卡住的问题求助
问题描述
我今天把系统升级到Ubuntu 24.04,快结束的时候MySQL进入运行状态,升级卡在了“mysqld is running as pid X”这一步。我重启了系统,万幸系统能正常启动,但运行apt-get upgrade时收到提示:
root@user-Inspiron-16-7610:/home/user# apt-get upgrade E: dpkg was interrupted, you must manually run 'sudo dpkg --configure -a' to correct the problem. root@user-Inspiron-16-7610:/home/user# dpkg --configure -a Setting up mysql-server-8.0 (8.0.36-2ubuntu3) ... mysqld will log errors to /var/log/mysql/error.log mysqld is running as pid 5244
结果又卡住了,不确定是不是我太心急,但感觉就是卡在控制台里没动静。而且我也担心还有其他包没完成升级,真的想让dpkg顺利完成配置。现在重启后,apt-get upgrade能识别到安装失败,但同样会卡住。请问怎么解决这个控制台卡住的问题?
解决方法
我遇到过好几次类似的情况,给你几个实用的解决思路:
1. 先停掉MySQL服务再重新配置
卡住的核心原因就是mysqld在运行,导致dpkg无法完成配置操作。你可以这么做:
- 要是当前终端卡得动不了,直接按
Ctrl+Alt+T新开一个终端窗口 - 执行命令停止MySQL服务:
sudo systemctl stop mysql - 回到之前的终端(或者直接在新终端)重新执行配置命令:
sudo dpkg --configure -a
这时候一般就能顺利走完MySQL的配置流程了。
2. 查看MySQL错误日志找具体问题
如果停掉服务还是卡,那大概率是MySQL本身有问题,比如配置错误或者权限问题。你可以查看错误日志找线索:
- 执行命令查看日志内容:
sudo cat /var/log/mysql/error.log - 重点看日志末尾的报错信息,比如是不是
/var/lib/mysql目录权限不对,或者my.cnf里有无效的配置项。针对性修复后再重新跑dpkg --configure -a。
3. 强制重装MySQL相关包
要是上面的方法都不管用,那就彻底清理掉现有MySQL再重装:
- 先停掉服务:
sudo systemctl stop mysql - 彻底卸载MySQL相关包:
sudo apt purge mysql-server-8.0 mysql-client-8.0 mysql-common - 删除残留的配置和数据文件:
sudo rm -rf /var/lib/mysql /etc/mysql - 重新安装MySQL:
sudo apt install mysql-server-8.0 - 最后再执行
sudo dpkg --configure -a确认所有包都配置完成。
4. 检查端口占用情况
有时候其他进程占用了MySQL默认的3306端口,也会导致MySQL启动异常卡住:
- 执行命令查看端口占用:
sudo lsof -i :3306 - 如果发现有非MySQL的进程占用,用
sudo kill -9 进程PID杀掉它,然后再重新配置。
备注:内容来源于stack exchange,提问作者Antony
相关产品推荐
相关产品推荐

