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