當系統殘留 MySQL RPM 包導致無法重新安裝時,需徹底強制卸載。本文提供標準查詢、強制移除、驗證清理的完整操作流程。
# 標準查詢
rpm -q mysql
# 輸出示例:mysql-5.0.77-4.el5_5.3
# 若無輸出但確定已裝,用模糊匹配
rpm -qa | grep -i mysql
# 輸出示例:
# MySQL-server-5.5.11-1.rhel5
# MySQL-client-5.5.11-1.rhel5
# MySQL-shared-5.5.11-1.rhel5
# 語法:rpm -e --nodeps 完整包名
rpm -e --nodeps mysql-5.0.77-4.el5_5.3
rpm -e --nodeps MySQL-server-5.5.11-1.rhel5
rpm -e --nodeps MySQL-client-5.5.11-1.rhel5
rpm -e --nodeps MySQL-shared-5.5.11-1.rhel5
關鍵參數:--nodeps 忽略依賴關係強制移除,**慎用**,僅用於殘留包阻塞新安裝時。
rpm -qa | grep -i mysql
# 應無任何輸出
# 檢查殘留文件
find / -name "*mysql*" -type f 2>/dev/null | head -20
# 手動清理殘留配置、數據目錄(如 /etc/my.cnf, /var/lib/mysql 等)
rpm -ivh MySQL-server-5.5.9-1.linux2.6.i386.rpm
rpm -ivh MySQL-client-5.5.9-1.linux2.6.i386.rpm
# 安裝完成會提示設置 root 密碼等後續操作
yum remove mysql mysql-server mysql-libs mysql-common
# 或
yum erase mysql*
YUM 會自動處理依賴,優先嘗試 YUM 卸載,失敗再用 RPM --nodeps。
userdel mysql; groupdel mysql(如無其他用途)systemctl disable mysqld; rm /etc/init.d/mysqld徹底清理舊安裝痕跡,是全新部署穩定運行的前提。建議養成「安裝前先查詢、遷移前先備份」的運維習慣。