1. 程式人生 > >sql server 2008 資料庫可疑的解決步驟

sql server 2008 資料庫可疑的解決步驟

備份並新建同名數據庫,並替換原資料檔案

 

1 把問題資料庫備份後直接刪除

  停掉SQLSERVER服務,把伺服器上出問題的資料庫, 假設名稱為 test的資料庫檔案及日誌檔案備份到其他目錄,然後直接將其刪除,把其資料庫檔案及日誌檔案也刪除

2 新建同名數據庫

  啟動SQLSERVER服務,新建同名數據庫test,檔案目錄和日誌和原來一致

3 用備份的資料庫檔案替換新的資料庫檔案

  停掉SQLSERVER服務,把備份的資料庫檔案替換新的資料庫檔案(只替換資料庫檔案,不替換日誌檔案)

  啟動SQLSERVER服務,開啟資料庫,這時資料庫應該是不能訪問的

-------------------設定應急模式、單使用者模式、檢查修復資料,取消單使用者模式----------------------

4 將資料庫設定為應急狀態

  alter database test set emergency

  執行後,為了保險起見,重新停止、開啟的SQLSERVER服務

  再開啟資料庫,已經可以看到裡面的內容了,如表,檢視,儲存過程等

  資料庫名稱後有緊急標誌,能看到資料庫結構,但無法進行備份等操作

5 將資料庫設定為單使用者模式

  ALTER DATABASE test SET SINGLE_USER

6 對資料庫進行檢查修復

  dbcc checkdb(test,REPAIR_ALLOW_DATA_LOSS)

  dbcc checkdb(test,REPAIR_REBUILD)

  操作後,仍然停止啟動SQLSERVER服務(不確定是否需要,我只是為了想無干擾檢視執行後的資料庫狀況)
 
  重新開啟資料庫,已經是正常狀態了,沒有應急提示了

7 取消單使用者模式

  exec sp_dboption test, N'single', N'false'

 

至此,資料庫恢復完畢,對資料庫進行BAK