SQL2005數據庫無法附加或出現置疑時的修復方法
文章出處:http://www.katarog.com 作者:興邦開發部 人氣: 發表時間:2016年12月13日
注:本實例以zxk數據庫被置疑做演示,
1、停止數據庫服務:打開SQL2005企業管理器,在服務器上點擊鼠標右鍵,然后用左鍵點擊“停止”菜單,停止SQL Server服務
2、數據庫備份:將原數據庫zxk文件拷貝至其它盤符進行備份。如:將“D:\data”目錄下的*.mdf和*.ldf拷貝至E盤或者直接將D盤下的data文件夾拷貝至E盤。
3、重啟數據庫服務:在服務器上點擊鼠標右鍵,然后用左鍵點擊“啟動”菜單,重新啟動SQL Server服務
5、新建數據庫:鼠標右擊數據庫在彈出的菜單中選擇“新建數據庫”,新建一個任意名稱的數據庫如JYPACS_US
6、替換數據庫文件:先停止數據庫服務(方法見步驟1),然后將E盤備份的數據庫zxk原文件修改成JYPACS_US數據庫名稱,并復制粘貼至原目錄下替換新文件。如:將“E:\data”目錄下的*.mdf和*.ldf文件復制粘貼至“D:\data”目錄下替換。
7、重啟數據庫服務:重啟SQL Server服務(方法見步驟3),,然后刷新數據庫,此時可見數據庫處于可疑或無法使用的狀態。
8、設置緊急狀態:在可疑的數據庫上點擊右鍵,然后用左鍵選擇“新建查詢”菜單,打開SQL Server的查詢分析器,在命令串口中輸入
alter database jypacs_us set emergency
然后按F5鍵或者點擊執行按鈕,將數據庫置為可疑模式。
9、設置單用戶模式:將SQL語句修改為
alter database jypacs_us set single_user
然后執行命令,將數據庫置為單用戶模式。
10、重建日志:清空命令窗口,然后輸入
dbcc checkdb('jypacs_us',REPAIR_ALLOW_DATA_LOSS)
這個時間比較長。耐心等待!
如果有錯誤提示,再運行:
dbcc checkdb('jypacs_us',REPAIR_REBUILD)
進行修復。如果沒有錯誤,可以跳過。
11、恢復多用戶模式:清空命令窗口然后輸入
alter database jypacs_us set multi_user
并執行,將數據庫恢復為多用戶模式。
刷新數據庫,此時會看到數據庫已恢復正常。這時候數據庫JYPACS_US中的數據基本上和被質疑中心庫中的數據基本一致,但不排除數據丟失,在使用前一定要核對下數據庫中相應的數據。無誤后可以將JYPACS_US代替中心庫zxk使用