【北亞資料恢復】誤操作導致雲伺服器表被truncate,表內資料被delete的資料恢復

北亞資料恢復發表於2022-01-25

雲伺服器具有下面這些優勢,採用雲伺服器方案的使用者群體越來越大。


一、使用雲伺服器不需要購買硬體裝置,不需要專門的機房託管這些伺服器,只需要按照所需的資源支付一定的費用就能租用需要的資源。資料中心不僅提供硬體環境和系統軟體資源,還提供諮詢服務,將各種硬體和系統軟體資源在管理後臺進行圖形化展示,方便操作,無需專業的技術去配置伺服器、資料庫等這些專業複雜操作。


二、綠色環保,減少硬體裝置的購買和折舊、淘汰成本。


三,雲伺服器供應商提供專業技術人員對伺服器進行維護,節約了裝置的執行維護、服務的搭建配置等成本,企業可以將更多資源投入到自身的業務中。


北亞資料恢復中心遇到越來越多雲伺服器的資料恢復問題。在這分享一個雲伺服器的資料恢復案例。



環境:


某雲ECS網站伺服器,


linux作業系統,


mysql資料庫版本號5.6。



故障:


在執行資料庫版本更新測試時,將本應在測試庫中執行的sql指令碼放到生產庫中去執行,導致部分表被truncate,另有部分表

內少量資料被delete。該例項內資料表均採用innodb作為預設儲存引擎。



雲伺服器資料恢復流程:


1.由於ECS內有其他業務仍在執行,為保證被truncate表底層資料不被破壞,北亞資料恢復工程師先對mysql的data目錄所在

分割槽進行備份。


2.由於需要恢復的12個表內不存在大欄位型別值和myisam引擎表,為節約資料傳輸時間,掃描資料段後,北亞資料恢復工

師下載獲取資料恢復所必需的資料庫段碎片。由於innodb引擎資料恢復必須依賴表結構資訊,mysql的表結構資訊儲存

於對 應表名的.frm檔案內。在本恢復案例中frm檔案完好,可直接使用。下載需要恢復的表對應的.frm檔案。


3.北亞資料恢復工程師分析系統表。讀取資料段內系統表資訊,獲取需要恢復的12個表在系統表內的註冊資訊。


4.恢復被truncate的表。北亞資料恢復工程師在下載完成的資料段檔案內提取對應於各表的資料頁,解析對應表的.frm檔案,

獲取到該表的表結構資訊。透過表結構資訊獲取到底層資料分配規則後,按照規則拆分資料段內的二進位制資料,並對不同類

型的資料進行字元展示轉換(各類整形、浮點型、時間型等),完成資料段到sql語句的轉換。


5.恢復被delete資料的表,基本流程同truncate表的恢復類似,不同點在於資料解析時需要提取被標註為“delete”的記錄。


6.資料還原。北亞資料恢復工程師根據解析出的表結構資訊在資料恢復環境中的mysql例項內建立表,並將恢復出的資料

匯入。


7.資料後期處理。由於直接從底層抓取出的記錄可能存在主鍵不唯一(引擎在儲存時產生的臨時記錄)和記錄重複(緩衝段)

以及亂碼(掃描資料段時出現特徵值匹配成功但不屬於該表的資料段)等情況,北亞資料恢復工程師處理提取出存在異常的

記錄。



資料驗證:


開啟遠端桌面,由管理員進行資料驗證,檢查恢復出來的資料是否正確、資料量是否正常。經過驗證,truncate表恢復完整可

用,delete記錄的表恢復完整可用。


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31380569/viewspace-2853933/,如需轉載,請註明出處,否則將追究法律責任。

相關文章