服務器崩潰致使mysql數據庫損壞的數據恢復過程

環境部署與故障緣由:

客戶本地服務器,操做系統爲windows2008 r2 。在當前環境內安裝有mysql5.6單實例,引擎類型爲innodb,表內數據存儲所使用表空間類型爲獨立表空間。未進行數據庫備份,未開啓binlog。因爲人爲誤操做使用Delete命令進行刪除數據時未添加where子句進行篩選致使全表數據被刪除,刪除後未對該表進行任何操做。
`mysql

恢復方案制定:

一、故障類型分類:在本案例中,因爲未對生產環境進行備份也未開啓binlog日誌,沒法直接還原數據庫,屬於典型表內mysql-delete數據誤刪除。
二、故障分析與可行性方案制定:對於mysql innodb誤刪除致使記錄丟失的恢復方案有三種,分別是備份還原、binlog還原和記錄深度解析。對於本案例前兩種方案不適用,只能使用記錄深度解析的方式進行恢復。此恢復方案恢復原理爲模擬innodb引擎記錄管理方式,根據表結構信息將二進制文件解析爲字符記錄。
`sql

數據恢復流程:

一、獲取數據文件:客戶將表結構文件及表數據文件(.ibd)經過網絡傳輸的方式發送到本公司郵箱,工程師下載文件。
二、使用恢復工具進行恢復:
服務器崩潰致使mysql數據庫損壞的數據恢復過程
服務器崩潰致使mysql數據庫損壞的數據恢復過程數據庫

在本案例中客戶提供了表結構腳本,能夠使用本工具中的5+3功能進行恢復。
首先讀取表結構信息:
服務器崩潰致使mysql數據庫損壞的數據恢復過程
服務器崩潰致使mysql數據庫損壞的數據恢復過程windows

開始解析記錄:
服務器崩潰致使mysql數據庫損壞的數據恢復過程
本工具默認將記錄提取爲SQL備份格式,等待解析完畢後還原到數據庫查看結果(爲保障客戶隱私關鍵信息已打碼):
服務器崩潰致使mysql數據庫損壞的數據恢復過程
`服務器

客戶驗收數據:

隨機挑選表內數據交由客戶驗證,並統計恢復記錄總數。客戶驗證後表示樣例數據正確,總數符合原表內記錄條數,恢復成功。網絡

相關文章
相關標籤/搜索