溫馨提示×

Ubuntu MariaDB數據恢復技巧是什么

小樊
36
2025-08-07 15:30:58
欄目: 云計算

以下是Ubuntu MariaDB數據恢復的關鍵技巧,按場景分類整理:

一、基于備份的恢復

  1. SQL備份恢復
    • 若有.sql格式備份,用mysql命令導入:
      mysql -u 用戶名 -p 數據庫名 < 備份文件.sql
  2. 物理文件恢復
    • 停止MariaDB服務:sudo systemctl stop mariadb
    • 將備份文件復制到數據目錄(默認/var/lib/mysql),確保權限正確:
      sudo cp -R /path/to/backup/* /var/lib/mysql/
      sudo chown -R mysql:mysql /var/lib/mysql/
    • 啟動服務:sudo systemctl start mariadb

二、誤操作或損壞恢復

  1. 二進制日志回滾(需提前開啟binlog)
    • mysqlbinlog解析日志,生成反向SQL:
      mysqlbinlog --start-datetime="YYYY-MM-DD HH:MM:SS" /var/lib/mysql/mysql-bin.00000X > revert.sql
    • 執行反向SQL恢復數據:mysql -u 用戶名 -p < revert.sql
  2. 系統版本表恢復(MariaDB 10.3+)
    • 對支持版本控制的表,通過FOR SYSTEM_TIME查詢歷史數據并導出:
      SELECT * FROM 表名 FOR SYSTEM_TIME AS OF 'YYYY-MM-DD HH:MM:SS' INTO OUTFILE '/tmp/data.sql'
    • 導入歷史數據:LOAD DATA INFILE '/tmp/data.sql' REPLACE INTO TABLE 表名

三、高級恢復場景

  1. InnoDB損壞修復
    • 編輯配置文件/etc/mysql/my.cnf,添加innodb_force_recovery=1(逐步增加至6,最大值可強制啟動)
    • 重啟后導出數據,再重建數據庫
  2. 專業工具輔助
    • 使用Percona Toolkitpt-table-checksumpt-table-sync修復主從不一致或表損壞
    • 通過mariabackup工具(官方推薦)進行物理備份與恢復,支持增量備份

四、注意事項

  • 恢復前務必先備份當前數據,避免二次損壞。
  • 定期測試備份文件可用性,確?;謴土鞒炭煽?。
  • 生產環境建議配置主從復制或集群,降低單點故障風險。

參考來源:

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