【資料庫資料恢復】華為雲ECS網站伺服器mysql資料庫資料恢復案例
資料庫資料恢復環境:
華為雲ECS,linux作業系統;
mysql資料庫,例項內資料表預設儲存引擎為innodb。
資料庫故障:
在執行資料庫版本更新測試時,使用者誤將本應在測試庫測試的sql指令碼執行在生產庫中,導致部分表被truncate,部分表內少
量資料被delete。
資料庫恢復過程:
1、由於該ECS內有其他業務在正常執行中,為避免被truncate表的底層資料不被破壞,首先映象備份mysql資料庫data目錄
所在分割槽。
2、由於需要恢復的被truncate表不存在大欄位型別值和myisam引擎表,資料恢復工程師使用工具掃描資料段並下載恢復數
據所必需的mysql資料庫段碎片。由於innodb引擎表的資料恢復必須依賴表結構資訊,mysql的表結構資訊儲存於對應表名
的.frm檔案內。經過檢測發現在本案例中的.frm檔案完好,可直接使用。下載需要的表對應的.frm檔案。
3、讀取資料段內系統表資訊,獲取需要恢復的表在系統表內的註冊資訊。
4、在下載完成的資料段檔案內提取對應於各表的資料頁,解析對應表的.frm檔案獲取到該表的表結構資訊。透過表結構資訊
獲取到底層資料分配規則,按照規則拆分資料段內二進位制資料並對不同型別進行字元展示轉換(各類整型、浮點型、時間型
等),完成資料段到sql語句的轉換。
5、恢復被delete資料的表,過程和恢復truncate表的類似,不同點在於解析資料時需要提取被標註為“delete”的記錄。
6、根據解析出的表結構資訊在環境中的mysql例項內建立表,並將恢復出的資料匯入。
7、由於直接從底層抓取出的記錄可能存在主鍵不唯一(引擎在儲存時產生的臨時記錄)和記錄重複(緩衝段)以及亂碼(掃
描資料段時出現特徵值匹配成功但不屬於該表的資料段)等情況,提取出的記錄可能存在異常,需要北亞企安資料恢復工程師
手動處理。
8、開啟遠端桌面,由使用者驗證資料的準確性和完整度。經過反覆驗證,truncate表和delete記錄的表都完整恢復。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31380569/viewspace-2932442/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 【資料庫資料恢復】SAP資料庫資料恢復案例資料庫資料恢復
- 【資料庫資料恢復】linux系統下MYSQL資料庫資料恢復案例資料庫資料恢復LinuxMySql
- 【資料庫資料恢復】Sql Server資料庫資料恢復案例資料庫資料恢復SQLServer
- 伺服器資料恢復—透過拼接資料庫碎片恢復SqlServer資料庫資料的資料恢復案例伺服器資料恢復資料庫SQLServer
- 寶塔資料庫恢復 mysql資料庫丟失恢復 mysql資料庫刪除庫恢復 寶塔mysql資料庫恢復資料庫MySql
- 伺服器資料恢復—雲伺服器mysql資料庫表資料被delete的資料恢復案例伺服器資料恢復MySql資料庫delete
- 【伺服器資料恢復】某雲ECS伺服器資料恢復案例伺服器資料恢復
- 【北亞資料庫資料恢復】誤操作導致資料丟失的華為雲mysql資料恢復案例資料庫資料恢復MySql
- 【資料庫資料恢復】Oracle資料庫誤truncate table的資料恢復案例資料庫資料恢復Oracle
- 資料庫資料恢復—無備份,binlog未開啟的Mysql資料庫資料恢復案例資料庫資料恢復MySql
- 【資料庫資料恢復】sql server資料庫連線失效的資料恢復案例資料庫資料恢復SQLServer
- 【資料庫資料恢復】MongoDB資料庫檔案損壞的資料恢復案例資料庫資料恢復MongoDB
- 【資料庫資料恢復】SqlServer資料庫無法讀取的資料恢復案例資料庫資料恢復SQLServer
- 伺服器資料恢復-誤操作導致mysql資料庫資料丟失的資料恢復案例伺服器資料恢復MySql資料庫
- 【資料庫資料恢復】EXT3檔案系統下MYSQL資料庫恢復案例資料庫資料恢復MySql
- 【伺服器資料恢復】某網站伺服器資料恢復案例伺服器資料恢復網站
- 資料庫資料恢復—附加資料庫錯誤823的SQL Server資料恢復案例資料庫資料恢復SQLServer
- 【資料庫資料恢復】ASM磁碟組掉線的Oracle資料庫資料恢復案例資料庫資料恢復ASMOracle
- 【資料庫資料恢復】SQL Server資料庫磁碟空間不足的資料恢復案例資料庫資料恢復SQLServer
- 【資料庫資料恢復】斷電導致Oracle資料庫資料丟失的資料恢復案例資料庫資料恢復Oracle
- 【伺服器資料恢復】Linux網站伺服器的資料恢復案例伺服器資料恢復Linux網站
- 【資料庫資料恢復】ASM例項不能掛載的Oracle資料庫資料恢復案例資料庫資料恢復ASMOracle
- 【資料庫資料恢復】MongoDB資料庫服務啟動失敗的資料恢復案例資料庫資料恢復MongoDB
- 【資料庫資料恢復】如何恢復Oracle資料庫truncate表的資料資料庫資料恢復Oracle
- 【資料庫資料恢復】windows server下SqlServer資料庫的資料恢復資料庫資料恢復WindowsServerSQL
- 資料庫修復資料恢復資料庫資料恢復
- 【伺服器資料恢復】Vsan資料恢復案例伺服器資料恢復
- 【資料庫資料恢復】透過恢復NDF檔案修復資料庫的資料恢復過程資料庫資料恢復
- 【資料庫資料恢復】MS SQL資料庫附加資料庫出錯怎麼恢復資料?資料庫資料恢復SQL
- 【資料庫資料恢復】誤truncate table的Oracle資料庫資料恢復方案資料庫資料恢復Oracle
- 【資料庫資料恢復】oracle資料庫誤truncate table怎麼恢復資料?資料庫資料恢復Oracle
- 【伺服器資料恢復】linux ext3檔案系統下mysql資料庫資料恢復案例伺服器資料恢復LinuxMySql資料庫
- 【北亞資料恢復】sqlserver資料庫被加密的資料恢復案例分享資料恢復SQLServer資料庫加密
- MySQL資料庫故障恢復MySql資料庫
- MySQL資料庫的恢復MySql資料庫
- 伺服器資料恢復-ESX SERVER資料恢復案例伺服器資料恢復Server
- 【伺服器資料恢復】SUN SOLARIS資料恢復案例伺服器資料恢復
- 資料庫資料恢復—MongoDB資料庫檔案丟失,啟動報錯的資料恢復案例資料庫資料恢復MongoDB