如何在SQL Server 2005中修復損壞的數據庫

1、在SQL Server Management Studio中隨便創建一個數據庫,例如:PVLink。

2、停止SQL Server服務。

如果不停止此服務,剛纔創建的PVLink數據庫將即不能被拷貝,也不能被覆蓋。

3、把已經損壞的數據庫的mdf文件拷貝並覆蓋剛纔新建的數據庫產生的mdf文件。

4、啓動SQL Server服務。

此時可以看見剛纔創建的PVLink數據庫名字後面沒有加號,無法察看其任何信息,其實目前它已經處於無法使用的狀態。

5、把數據庫設置爲緊急狀態。

通過在“查詢分析器”中執行:alter database PVLink set EMERGENCY 可以將數據庫設置爲緊急狀態,此時數據庫PVLink的圖標改變成粉紅色並出現“緊急”字樣。

6、將數據庫設置爲單用戶模式。

如果不設置爲單用戶模式,我們將無法使用帶有效repair選項的DBCC CHECKDB來檢查/修復數據庫,SQL Server 2005設置單用戶模式比SQL Server 2000容易,只要在“查詢分析器”中執行:

use master

go

sp_dboption 'PVLink',single,true

即可。

7、修復數據庫

修復數據庫主要使用DBCC來操作,一般來講,我們可以使用以下三個選項來修復:

REPAIR_ALLOW_ DATA_LOSS

嘗試修復報告的所有錯誤。這些修復可能會導致一些數據丟失。

REPAIR_FAST

僅爲保持向後兼容性而保留。

REPAIR_REBUILD

執行由 REPAIR_FAST 執行的所有修復,包括需要較長時間的修復(如重建索引)。執行這些修復時不會有丟失數據的危險。

一般我們通過執行:DBCC CHECKDB('PVLink',REPAIR_REBUILD) 即可完成修復工作,此時 SQL Server 2005會給出很多提示,因爲這個過程可能會導致一些數據庫設計或者數據的丟失,並且在這個過程中,會產生新的以ldf爲擴展名的數據庫日誌文件。

8、完成以上的步驟後,一般情況下數據庫應該可用了,如果數據庫此時仍然是緊急狀態,可以通過:alter database PVLink set ONLINE ,把數據庫變成在線狀態。

以上介紹的方法對於通過“附加”的方法無法恢復受到比較嚴重損壞的數據庫比較有效,總的來看,SQL Server 2005給數據庫管理和開發提供了更加有效實用的工具和方法。

#End

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章