溫馨提示×

Ubuntu MariaDB如何進行故障恢復

小樊
41
2025-08-21 20:57:26
欄目: 云計算

Ubuntu MariaDB故障恢復可按以下步驟操作,優先從備份恢復,無備份時嘗試物理文件恢復或配置修復:

一、有備份時的恢復

  1. 停止MariaDB服務

    sudo systemctl stop mariadb  
    
  2. 恢復SQL格式備份

    mysql -u 用戶名 -p 數據庫名 < 備份文件.sql  
    
  3. 恢復.dump格式備份

    mysqlimport -u 用戶名 -p --local 數據庫名 備份文件.dump  
    # 或  
    mariadb-restore -u 用戶名 -p --databases 數據庫名 備份文件.dump  
    
  4. 啟動服務并驗證

    sudo systemctl start mariadb  
    mysql -u 用戶名 -p 數據庫名  # 檢查數據是否恢復  
    

二、無備份時的恢復(謹慎操作)

  1. 物理文件恢復(需提前備份數據目錄)

    • 停止服務并備份當前數據目錄:
      sudo systemctl stop mariadb  
      sudo cp -r /var/lib/mysql /var/lib/mysql_backup  
      
    • 用物理備份文件替換損壞文件(如.ibd文件):
      sudo cp /path/to/backup/文件名.ibd /var/lib/mysql/  
      sudo chown mysql:mysql /var/lib/mysql/文件名.ibd  
      sudo chmod 660 /var/lib/mysql/文件名.ibd  
      
    • 啟動服務并驗證:
      sudo systemctl start mariadb  
      
  2. 配置文件修復

    • 檢查/etc/mysql/my.cnf權限和路徑是否正確,修復后重啟服務:
      sudo chown root:root /etc/mysql/my.cnf  
      sudo systemctl restart mariadb  
      

三、其他場景

  • 權限問題:確保數據目錄屬主為mysql用戶:
    sudo chown -R mysql:mysql /var/lib/mysql  
    
  • 服務啟動失敗:查看日志/var/log/mysql/error.log,根據錯誤提示修復(如跳過權限檢查啟動):
    sudo mysqld_safe --skip-grant-tables &  
    

注意:物理恢復可能導致數據不一致,建議優先通過備份恢復,操作前務必備份當前數據。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女