1. 检查已安装的 MySQL/MariaDB
# 查看已安装的MySQL相关包(RPM系系统)
rpm -qa | grep -i mysql
查看MariaDB(CentOS 7+默认)
rpm -qa | grep -i mariadb
Debian/Ubuntu系统使用
dpkg -l | grep -i mysql
dpkg -l | grep -i mariadb
2. 停止MySQL/MariaDB服务
停止服务(SysVinit系统)
sudo service mysql stop MySQL
sudo service mysqld stop 旧版MySQL
sudo service mariadb stop MariaDB
Systemd系统(CentOS 7+/Ubuntu 16.04+)
sudo systemctl stop mysqld MySQL
sudo systemctl stop mariadb MariaDB
3. 卸载MySQL/MariaDB软件包
RPM系(CentOS/RHEL/Fedora)
强制卸载MySQL及其依赖
sudo rpm -e --nodeps mysql-server mysql-common mysql-libs
卸载MariaDB
sudo rpm -e --nodeps mariadb-server mariadb-client mariadb-libs
如果报错,尝试忽略依赖和脚本
sudo rpm -ev --noscripts mysql-libs-5.1.71-1.el6.x86_64
DEB系(Ubuntu/Debian)
卸载MySQL
sudo apt purge mysql-server mysql-client mysql-common
卸载MariaDB
sudo apt purge mariadb-server mariadb-client
清理残留配置
sudo apt autoremove
sudo apt autoclean
4. 删除残留文件和目录
查找所有MySQL相关文件
sudo find / -name mysql
删除常见残留目录
sudo rm -rf /var/lib/mysql 数据库文件
sudo rm -rf /etc/mysql 配置文件
sudo rm -rf /usr/lib64/mysql 库文件(64位系统)
sudo rm -rf /usr/share/mysql 共享文件
删除MariaDB残留
sudo rm -rf /var/lib/mariadb
sudo rm -rf /etc/my.cnf.d/
5. 验证卸载是否彻底
检查软件包
rpm -qa | grep -i mysql RPM系
dpkg -l | grep -i mysql DEB系
检查服务状态
systemctl list-unit-files | grep -i mysql
尝试启动服务(应报错)
sudo systemctl start mysqld
6. 关键注意事项
1. CentOS 7+系统
默认预装MariaDB(MySQL分支),必须卸载:
sudo rpm -e --nodeps mariadb-libs
2. 依赖冲突处理
若报错`... is needed by ...`,添加`--nodeps`强制卸载:
sudo rpm -e --nodeps mysql-libs
3. 配置文件备份
如需保留配置,先备份`/etc/my.cnf`或`/etc/mysql/`目录。
7. 常见问题解决
错误:`mysql-libs is needed by postfix`
临时卸载postfix后再安装MySQL:
sudo rpm -e postfix --nodeps
错误:`/var/lib/mysql 非空`
确保数据已备份后强制删除:
sudo rm -rf /var/lib/mysql/*
完成上述步骤后,系统即清理干净,可安全安装新版MySQL。建议重启系统后再安装新版本以避免冲突。
C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:
一点编程也不会写的:零基础C语言学练课程
解决困扰你多年的C语言疑难杂症特性的C语言进阶课程
从零到写出一个爬虫的Python编程课程
只会语法写不出代码?手把手带你写100个编程真题的编程百练课程
信息学奥赛或C++选手的 必学C++课程
蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程
手把手讲解近五年真题的蓝桥杯辅导课程