Ubuntu从MariaDB换回MySQL后无法启动、安装失败问题求助
解决步骤
1 彻底清理MySQL、MariaDB残留(核心原因多为旧版本文件未清理干净)
- 停止所有相关服务
sudo systemctl stop mysql mariadb
- 卸载所有相关安装包
sudo apt purge -y mysql-server mysql-client mysql-common mysql-server-core-* mysql-client-core-* mariadb-*
- 删除所有残留配置、数据、运行时目录
sudo rm -rf /etc/mysql /var/lib/mysql /var/log/mysql /var/run/mysqld
- 清理多余依赖
sudo apt autoremove -y && sudo apt autoclean
2 修复AppArmor权限问题(日志明确显示AppArmor拒绝了mysqld的sys_nice权限)
- 编辑MySQL的AppArmor规则文件
sudo nano /etc/apparmor.d/usr.sbin.mysqld
- 在文件末尾的
}之前添加以下两行规则
capability sys_nice, /var/run/mysqld/** rw,
- 重新加载AppArmor规则使其生效
sudo systemctl reload apparmor
3 重新安装MySQL
- 更新软件源
sudo apt update
- 安装MySQL服务端与客户端
sudo apt install -y mysql-server mysql-client
- 验证服务状态,正常运行则问题解决
sudo systemctl status mysql
4 若仍无法启动的补充操作
- 修正MySQL相关目录的权限归属
sudo chown -R mysql:mysql /var/lib/mysql /var/run/mysqld sudo chmod 755 /var/run/mysqld
- 手动初始化数据目录
sudo mysqld --initialize --user=mysql
- 再次启动服务
sudo systemctl start mysql
内容的提问来源于stack exchange,提问作者Rafii1
相关产品推荐
相关产品推荐

