SQL Server數據誤刪後數據挽回

SQL Server的資料庫其實是兩個檔案,一個是數據檔案,一個是日誌檔案,存放於%Microsoft SQLServer%/mssql/data 目錄中。

原理:日誌檔案中存放了所有操作的日誌,讀取操作日誌能將數據還原。
方法:下載Lumigent Explorer軟體(幾年前下的,忘了下載地址了,自己網上搜吧)
1 運行intel目錄下的setup,按默認下一步,在序列號輸入框中,請運行上級目錄中的keygen獲得序列號
2 在Choose Server這個步驟,請輸入機器名或者IP位址(如果是本機,請輸入本機的機器名或127.0.0.1或Localhost都可以,最好填寫機器名,如果不是本機,請輸入遠程機器的IP位址)
3 填寫user和password,如果是本機,可以Use Windows NT authenticat打勾
4 選擇你要登錄的數據和要捕獲日誌的天數
5 安裝完畢後,在程式組選單中選擇Lumigent Explorer
6 在Log Explorer中,點擊左方的"Attach Log File"後,在右邊對面相應的界面
SQL Server:默認為(local),如果是操作另外的機器的SQL Server,請輸入對應的IP
填寫用戶名和密碼,如果是本機,可以選擇"Use Windows NT authentication"
然後點擊“連線”
7 在Database Name中,選擇你要恢復的資料庫,其他兩個複選框默認,點擊Attach
8 左邊的界面出現變化,選擇"Browse"下的“View Log",右邊將會顯示該庫自建立以來所有的日誌,請點擊上方工具列中的第一個按鈕,即"Filter Log Records"
(1) 在Time Range中,你可以選擇時間範圍
(2) Activity選項卡,你可以選擇操作的類型,根據自己情況選擇,可以默認
(3) Table選項卡中,選擇你要察看的表(左邊是系列表,右邊是用戶名,只選用戶表中你要恢復或者察看的表即可)
其他選項卡可以不管
9 點擊Apply按鈕,過濾日誌,然後在日誌列表顯示框,選擇Undo Transaction,彈出檔案保存對話框,,將保存為一個sql腳本檔案,用記事本打開,你會看到一些sql語句,這些語句就是對你原來操作的反操作(比如,你原來是delete某條記錄,他會顯示為insert某條記錄;刪除整個表的數據,它就會有若干條相應的insert記錄)
10 仔細檢查該腳本檔案,察看哪些是有用的,哪些是沒用的(沒用的可以刪除),然後將查詢分詢器直接運行該檔案或者點擊該軟體左方的“Run Sql Script",在右邊的檔案名稱中選擇該檔案,然後點擊“Run按鈕”即可

相關詞條

熱門詞條

聯絡我們