數(shù)據(jù)庫數(shù)據(jù)恢復(fù)環(huán)境:
5塊硬盤組建RAID5,劃分LUN供windows服務(wù)器使用,共有三個邏輯分區(qū);
在windows服務(wù)器內(nèi)部署有Sql Server數(shù)據(jù)庫。
數(shù)據(jù)庫故障:
未知原因?qū)е聰?shù)據(jù)庫文件丟失,涉及5個數(shù)據(jù)庫,數(shù)千個表,不能確定數(shù)據(jù)存儲位置。
數(shù)據(jù)庫文件丟失后服務(wù)器仍在運行,但未寫入大量數(shù)據(jù)。
數(shù)據(jù)庫數(shù)據(jù)恢復(fù)過程:
1、對故障設(shè)備中所有硬盤以只讀方式進行完整鏡像備份,后續(xù)的數(shù)據(jù)分析和數(shù)據(jù)恢復(fù)操作都基于鏡像文件進行,避免對原始數(shù)據(jù)造成二次破壞。
2、基于鏡像文件分析raid5,獲取raid相關(guān)信息并利用信息及內(nèi)部數(shù)據(jù)塊信息重組RAID。
重組RAID:
北亞企安數(shù)據(jù)恢復(fù)——Sql Server數(shù)據(jù)庫數(shù)據(jù)恢復(fù)
3、提取LUN內(nèi)的三個分區(qū)鏡像。
4、掃描文件系統(tǒng)內(nèi)丟失的文件,未找到被刪除的數(shù)據(jù)庫文件,通過文件系統(tǒng)層面無法恢復(fù)數(shù)據(jù)庫數(shù)據(jù)。
5、經(jīng)過北亞企安數(shù)據(jù)恢復(fù)工程師團隊的會診,最終敲定通過掃描數(shù)據(jù)頁并提取頁內(nèi)記錄的數(shù)據(jù)恢復(fù)方案來恢復(fù)數(shù)據(jù)庫數(shù)據(jù)。
6、使用北亞企安自主編寫的數(shù)據(jù)頁掃描程序掃描分區(qū)內(nèi)數(shù)據(jù)頁并進行提取。在分別掃描兩個分區(qū)鏡像后發(fā)現(xiàn)系統(tǒng)盤內(nèi)數(shù)據(jù)頁數(shù)量極少且數(shù)據(jù)頁斷裂情況嚴(yán)重;另一分區(qū)內(nèi)掃描到數(shù)據(jù)頁數(shù)量較多,暫定此分區(qū)為數(shù)據(jù)庫文件存儲空間。
掃描數(shù)據(jù)頁:
北亞企安數(shù)據(jù)恢復(fù)——Sql Server數(shù)據(jù)庫數(shù)據(jù)恢復(fù)
7、Sql Server數(shù)據(jù)庫使用系統(tǒng)表來管理所有用戶表,在這些系統(tǒng)表內(nèi)記錄了各表的列數(shù)、數(shù)據(jù)類型及約束信息等。解析Sql Server系統(tǒng)表過程中發(fā)現(xiàn)提取出的數(shù)據(jù)頁內(nèi)系統(tǒng)表損壞,無法正常讀取信息。與用戶方溝通后得知有備份文件,且備份后沒有進行過大的表結(jié)構(gòu)改動,系統(tǒng)表可用。
8、還原備份。
還原備份:
北亞企安數(shù)據(jù)恢復(fù)——Sql Server數(shù)據(jù)庫數(shù)據(jù)恢復(fù)
9、提取數(shù)據(jù)庫中各表的表結(jié)構(gòu)信息。
提取表結(jié)構(gòu)信息:
北亞企安數(shù)據(jù)恢復(fù)——Sql Server數(shù)據(jù)庫數(shù)據(jù)恢復(fù)
10、解析表結(jié)構(gòu)腳本。將各表的列信息存入數(shù)據(jù)庫內(nèi)。
掃描腳本文件:
北亞企安數(shù)據(jù)恢復(fù)——Sql Server數(shù)據(jù)庫數(shù)據(jù)恢復(fù)
表結(jié)構(gòu)信息存入數(shù)據(jù)庫:
北亞企安數(shù)據(jù)恢復(fù)——Sql Server數(shù)據(jù)庫數(shù)據(jù)恢復(fù)
11、解析系統(tǒng)表獲取用戶表id信息、關(guān)聯(lián)表結(jié)構(gòu)與數(shù)據(jù)頁。
12、新建數(shù)據(jù)庫,使用北亞企安自主編寫軟件解析記錄并導(dǎo)入到恢復(fù)環(huán)境內(nèi)。
13、整理恢復(fù)結(jié)果。在此分區(qū)內(nèi)除了存放數(shù)據(jù)庫文件外還存放一些備份文件,所以在導(dǎo)出記錄后可能存在重復(fù)數(shù)據(jù),北亞企安數(shù)據(jù)恢復(fù)工程師編寫程序進行去重。
數(shù)據(jù)庫去重:
北亞企安數(shù)據(jù)恢復(fù)——Sql Server數(shù)據(jù)庫數(shù)據(jù)恢復(fù)
14、去重后由用戶方工程師進行對恢復(fù)出來的數(shù)據(jù)庫文件進行檢測驗證,經(jīng)過仔細(xì)查驗后確認(rèn)數(shù)據(jù)完整可用。
15、由數(shù)據(jù)恢復(fù)工程師協(xié)助用戶方工程師將恢復(fù)出來的數(shù)據(jù)遷移到準(zhǔn)備好的環(huán)境中。
-
服務(wù)器
+關(guān)注
關(guān)注
13文章
9717瀏覽量
87364 -
SQL
+關(guān)注
關(guān)注
1文章
781瀏覽量
44838 -
Server
+關(guān)注
關(guān)注
0文章
94瀏覽量
24561 -
數(shù)據(jù)恢復(fù)
+關(guān)注
關(guān)注
10文章
640瀏覽量
18033
發(fā)布評論請先 登錄
oracle數(shù)據(jù)恢復(fù)—oracle數(shù)據(jù)庫誤執(zhí)行錯誤truncate命令如何恢復(fù)數(shù)據(jù)?

數(shù)據(jù)庫數(shù)據(jù)恢復(fù)——MongoDB數(shù)據(jù)庫文件拷貝后服務(wù)無法啟動的數(shù)據(jù)恢復(fù)

數(shù)據(jù)庫數(shù)據(jù)恢復(fù)—SQL Server附加數(shù)據(jù)庫提示“錯誤 823”的數(shù)據(jù)恢復(fù)案例

虛擬化數(shù)據(jù)恢復(fù)—誤還原快照的數(shù)據(jù)恢復(fù)案例
Devart: dbForge Compare Bundle for SQL Server—比較SQL數(shù)據(jù)庫最簡單、最準(zhǔn)確的方法
SqlServer數(shù)據(jù)恢復(fù)—SqlServer數(shù)據(jù)庫數(shù)據(jù)恢復(fù)案例

數(shù)據(jù)庫數(shù)據(jù)恢復(fù)—Mysql數(shù)據(jù)庫表記錄丟失的數(shù)據(jù)恢復(fù)流程

數(shù)據(jù)庫數(shù)據(jù)恢復(fù)—MYSQL數(shù)據(jù)庫ibdata1文件損壞的數(shù)據(jù)恢復(fù)案例
數(shù)據(jù)庫數(shù)據(jù)恢復(fù)—通過拼接數(shù)據(jù)庫碎片恢復(fù)SQLserver數(shù)據(jù)庫

oracle數(shù)據(jù)恢復(fù)—Oracle數(shù)據(jù)庫打開報錯的數(shù)據(jù)恢復(fù)案例

數(shù)據(jù)庫數(shù)據(jù)恢復(fù)—Oracle數(shù)據(jù)庫文件system01.dbf損壞的數(shù)據(jù)恢復(fù)案例

數(shù)據(jù)庫數(shù)據(jù)恢復(fù)—SQL Server數(shù)據(jù)庫出現(xiàn)823錯誤的數(shù)據(jù)恢復(fù)案例

數(shù)據(jù)庫數(shù)據(jù)恢復(fù)—SqlServer數(shù)據(jù)庫底層File Record被截斷為0的數(shù)據(jù)恢復(fù)案例

評論