云服務器數據恢復環境:
阿里云ECS網站服務器,linux操作系統+mysql數據庫。
云服務器故障:
在執行數據庫版本更新測試時,在生產庫誤執行了本來應該在測試庫執行的sql腳本,導致生產庫部分表被truncate,還有部分表內的少量數據被delete。該實例內數據表均采用innodb作為默認存儲引擎。
云服務器數據恢復過程:
1、由于用戶ECS內還有其他業務在運行,為避免被truncate表的底層數據被破壞,首先將mysql數據庫的data目錄所在分區備份。
北亞企安數據恢復——云服務器數據恢復
2、需要恢復的十多個表內不存在大字段類型值和myisam引擎表,直接掃描數據段并下載恢復所必需的數據庫段碎片。由于innodb引擎表恢復數據須依賴表結構信息,mysql的表結構信息存儲于對應表名的.frm文件內。經過檢測發現.frm文件完好,可直接使用。下載需要恢復的表所對應的.frm文件。
北亞企安數據恢復——云服務器數據恢復
3、讀取&分析數據段內系統表信息,獲取需要恢復的十多個表在系統表內的注冊信息。
4、在下載完成的數據段文件內提取對應于各表的數據頁,解析對應表的.frm文件獲取該表的表結構信息。通過表結構信息獲取到底層數據分配規則,北亞企安數據恢復工程師按照規則拆分數據段內二進制數據并將不同類型數據進行字符展示轉換(各類整型、浮點型、時間型等),完成數據段到sql語句的轉換。
5、恢復被delete數據的表的流程類似恢復被truncate表的流程,差異在于解析數據時需要提取被標注為“delete”的記錄。
6、根據解析出的表結構信息在恢復環境中的mysql實例內創建表,將恢復出的數據導入。
7、由于直接從底層抓取出的記錄可能存在主鍵不唯一(引擎在存儲時產生的臨時記錄)、記錄重復(緩沖段)和亂碼(掃描數據段時出現特征值匹配成功但不屬于該表的數據段)等情況,北亞企安數據恢復工程師人工處理提取記錄存在的異常。
8、由用戶方遠程桌面的方式驗證恢復數據的正確性和完整性。經過用戶方工程師的多方驗證,確認被truncate的表和被delete記錄的表的數據恢復完整,數據正確有效。本次數據恢復工作完成。
審核編輯 黃宇
-
數據恢復
+關注
關注
10文章
692瀏覽量
18852 -
ECS
+關注
關注
0文章
51瀏覽量
21040 -
云服務器
+關注
關注
0文章
830瀏覽量
14094
發布評論請先 登錄
服務器數據恢復—RAIDZ多盤離線導致服務器崩潰的數據恢復案例
服務器數據恢復—意外斷電!Linux服務器數據恢復大揭秘
服務器數據恢復—RAIDZ多塊硬盤離線導致服務器崩潰的數據恢復案例
服務器數據恢復—服務器斷電導致raid模塊損壞的數據恢復案例
服務器數據恢復—壞道“突襲”Raid5陣列,數據恢復大揭秘
服務器數據恢復—硬盤離線導致raid上層的卷無法掛載的數據恢復案例
服務器數據恢復—Linux系統服務器崩潰的數據恢復案例
虛擬化數據恢復—VMware虛擬化環境下重裝系統導致服務器數據丟失的數據恢復
服務器數據恢復—如何預防服務器故障與恢復服務器數據!
云儲存服務器與傳統存儲的區別 云儲存服務器數據恢復方法
服務器數據恢復—服務器硬盤燈閃黃燈的數據恢復案例
服務器數據恢復—如何讓ZFS文件系統數據“起死回生”?

服務器數據恢復—云服務器ECS數據恢復案例
評論