數據庫數據恢復環境:
5塊硬盤組建一組RAID5陣列,劃分LUN供windows系統服務器使用。windows系統服務器內運行了Sql Server數據庫,存儲空間在操作系統層面劃分了三個邏輯分區。
數據庫故障:
數據庫文件丟失,主要涉及3個數據庫,數千張表。數據庫文件丟失原因未知,不能確定丟失的數據庫文件的存放位置。數據庫文件丟失后,服務器仍處于開機狀態,所幸未寫入大量數據。
數據庫數據恢復過程:
1、鏡像備份過程不在這里贅述,后續所有的數據分析和數據恢復操作都基于鏡像文件進行。
2、基于鏡像文件分析所有磁盤的底層數據,獲取重組RAID所需信息。根據獲取到的raid相關信息內部數據塊信息重組RAID。
北亞企安數據恢復——SQL Server數據庫恢復
3、完成raid重組后,提取LUN的三個分區的鏡像。掃描文件系統內丟失文件,但是沒有找到丟失的數據庫文件,從文件系統角度無法恢復丟失的數據庫文件。
4、使用北亞企安自主開發的掃描程序掃描分區內數據頁并進行提取。經過掃描發現一個分區中數據頁數量極少且數據頁斷裂情況嚴重,另一分區內掃描到的數據頁較多,初步判斷此分區為丟失的數據庫文件的存儲空間。
掃描數據頁:
北亞企安數據恢復——SQL Server數據庫恢復
5、Sql Server數據庫使用系統表來管理所有用戶表,在這些系統表內記錄了各表的列數、數據類型及約束信息等。在解析系統表過程中發現提取出的數據頁內系統表損壞,無法正常讀取信息。在與用戶方進行溝通后得知故障數據庫有備份文件,且備份完成后表結構沒有進行過大的改動,系統表可用。
6、還原備份。
北亞企安數據恢復——SQL Server數據庫恢復
7、分別提取三個庫中各表的表結構信息。
北亞企安數據恢復——SQL Server數據庫恢復
8、解析表結構腳本,將各表的列信息存入數據庫內便于后續使用。
掃描腳本文件:
北亞企安數據恢復——SQL Server數據庫恢復
表結構信息存入數據庫:
北亞企安數據恢復——SQL Server數據庫恢復
9、解析系統表獲取用戶表id信息、關聯表結構與數據頁。
10、新建數據庫,使用北亞企安自主開發的軟件解析記錄并導入到準備好的環境內。
11、在數據庫文件所在的分區內除了數據庫文件外還有若干備份文件,所以在導出記錄后可能存在重復數據,需要去重。北亞企安數據恢復工程師編寫小程序進行去重。
數據庫去重:
北亞企安數據恢復——SQL Server數據庫恢復
12、數據處理完成后,由用戶方工程師對恢復出來的數據進行檢驗,經過查驗用戶方表示數據可以接受,移交數據到用戶方準備好的存儲中。本次數據恢復工作完成。
審核編輯 黃宇
-
RAID
+關注
關注
0文章
248瀏覽量
34890 -
數據恢復
+關注
關注
10文章
429瀏覽量
16909 -
數據庫
+關注
關注
7文章
3602瀏覽量
63475
發布評論請先 登錄
相關推薦
評論