Ubuntu MariaDB故障恢復可按以下步驟操作,優先從備份恢復,無備份時嘗試物理文件恢復或配置修復:
停止MariaDB服務
sudo systemctl stop mariadb
恢復SQL格式備份
mysql -u 用戶名 -p 數據庫名 < 備份文件.sql
恢復.dump格式備份
mysqlimport -u 用戶名 -p --local 數據庫名 備份文件.dump
# 或
mariadb-restore -u 用戶名 -p --databases 數據庫名 備份文件.dump
啟動服務并驗證
sudo systemctl start mariadb
mysql -u 用戶名 -p 數據庫名 # 檢查數據是否恢復
物理文件恢復(需提前備份數據目錄)
sudo systemctl stop mariadb
sudo cp -r /var/lib/mysql /var/lib/mysql_backup
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
配置文件修復
/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 &
注意:物理恢復可能導致數據不一致,建議優先通過備份恢復,操作前務必備份當前數據。