首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 更多程式語言 >> 程式設計疑難解答

Linux 手動刪除 MySQL 殘留檔案導致 rpm/yum 衝突:正確卸載重裝姿勢

     編輯:程式設計疑難解答

錯誤現場

手動 `rm -rf` 刪除 MySQL 檔案後,`rpm -e` 卸載報「找不到檔案」,`yum install` 新版本又報舊版本衝突,陷入死循環。

根本原因

RPM 資料庫記錄了套件安裝的檔案清單與檢查和。手動刪除檔案不會更新 RPM 資料庫,導致資料庫與實際檔案系統不一致,後續操作必然失敗。

正確解決步驟

  1. 查詢殘留套件:
    rpm -qa | grep -i mysql
    
  2. 強制卸載(忽略檔案缺失):
    rpm -e --nodeps --noscripts $(rpm -qa | grep -i mysql)
    
  3. 清理殘留檔案與資料目錄:
    rm -rf /var/lib/mysql /etc/my.cnf /var/log/mysqld.log
    # 視具體安裝路徑補充
    
  4. 重建 RPM 資料庫(如有損壞):
    rpm --rebuilddb
    
  5. 使用 yum 乾淨安裝:
    yum clean all
    yum install mysql-community-server  # 或 mariadb-server
    

最佳實踐原則

永遠使用套件管理器(yum/dnf/apt/zypper)安裝、升級、移除軟體。手動操作 `/usr`、`/var/lib`、`/etc` 下由套件管理的檔案是「毀滅性」的。

結語

誤刪檔案後,先用 `rpm -e --nodeps` 強制清理資料庫記錄,再物理清理殘留檔案,最後用 `yum` 重新安裝,即可恢復乾淨環境。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved