mysql誤刪除資料後的恢復策略

2021-09-04 09:10:45 字數 2039 閱讀 8839

系統環境:

linux 2.6.32-754.3.5.el6.x86_64

資料庫環境:

mysql 5.7.23

日誌格式:

mixed

gtid

:啟用

備份策略:利用

xtrabackup每天凌晨00:00自動完全備份

某技術人員在上午10點不小心trancate了乙個表,上午11點發現了異常需緊急恢復被刪除的資料。

因為凌晨全備後到誤操作這段時間(凌晨00:00到上午10:00)以及誤操作到被發現準備緊急恢復這段時間(上午10:00到上午11:00),資料庫都可能發生了更新,所以必須依靠全備資料配合binlog來做資料恢復,還需要注意binlog在這兩個時間段內是否發生滾動的情況。

1、停止mysqld服務

service mysqld stop
2、利用mysqlbinlog命令將對應的binlog檔案匯出為sql檔案

mysqlbinlog log-bin.000034 > log-bin34.sql
3、找出truncate語句對應的內容,並將其刪除,如圖:

4、利用當天凌晨全備的xtrabackup_info資訊找到備份時對應的pso值,如圖:

5、在上述的log-bin34.sql檔案中找出end_log_pos 6044對應的位置並刪除該值以及該值之前的所有語句,如圖:

6、利用innobackupex正常恢復資料庫狀態到全備那一刻的所有資料

清除mysql

資料目錄

(最好備份):

rm –rf /mysql/data/*
prepare操作:

全備恢復(恢復完後要把資料目錄的所屬使用者和組設定回mysql):

innobackupex --datadir=/mysql/data --copy-back /backup/2018-12-19_00-00-00/
7、啟動mysql直接執行上述處理好的sql檔案即可恢復資料

service mysqld start

mysql –utest –p123456 –e 'source /log-bin34.sql'

mysql 誤刪除資料恢復

第一步 保證mysql已經開啟binlog 值必須為on 開啟binlog方法 第二步 檢視binlog存放日誌檔案目錄 第三步 檢視binlog row image 值必須為full 修改 binlog row image 第四步 檢視binlog模式 必須為行級模式row 修改模式方法 第五步 ...

恢復誤刪除資料

用log explorer試一下!下面是對該軟體的介紹 解壓縮密碼 www.heibai.net 序號產生器產生的是註冊碼,是兩個 用解壓縮密碼解開後,壓縮包裡也有乙個序號產生器的 開啟log explorer file attach log file 選擇伺服器和登陸方式 connect 選擇資料...

mysql 誤刪除資料恢復(binlog)

恢復前提 mysql有開啟日誌記錄 恢復概覽 1 通過mysql二進位制日誌檔案生成sql,整個庫恢復需把刪除的sql語句去掉,執行sql 2 部分恢復同樣生成sql檔案,過濾sql檔案,複製sql後去掉不需要的sql語句,執行sql 生成sql檔案方法 通過mysqlbinlog工具 一般在 my...