SQLSERVER2008-数据库可疑的解决步骤
1?把問題數據庫備份后直接刪除
??停掉SQLSERVER服務,把服務器上出問題的數據庫,?假設名稱為?ErrorDB的數據庫文件及日志文件備份到其他目錄,然后直接將其刪除,把其數據庫文件及日志文件也刪除
2?新建同名數據庫
??啟動SQLSERVER服務,新建同名數據庫ErrorDB,文件目錄和日志和原來一致
3?用備份的數據庫文件替換新的數據庫文件
??停掉SQLSERVER服務,把備份的數據庫文件替換新的數據庫文件(只替換數據庫文件,不替換日志文件)
??啟動SQLSERVER服務,打開數據庫,這時數據庫應該是不能訪問的
-------------------設置應急模式、單用戶模式、檢查修復數據,取消單用戶模式----------------------
4?將數據庫設置為應急狀態
??alter database ErrorDB set emergency
??執行后,為了保險起見,重新停止、開啟的SQLSERVER服務
??再打開數據庫,已經可以看到里面的內容了,如表,視圖,存儲過程等
??數據庫名稱后有緊急標志,能看到數據庫結構,但無法進行備份等操作
5?將數據庫設置為單用戶模式
??ALTER DATABASE ErrorDB SET SINGLE_USER
6?對數據庫進行檢查修復
??dbcc checkdb(EIMSDb,REPAIR_ALLOW_DATA_LOSS)
??dbcc checkdb(EIMSDb,REPAIR_REBUILD)
??操作后,仍然停止啟動SQLSERVER服務(不確定是否需要,我只是為了想無干擾查看執行后的數據庫狀況)
?
??重新打開數據庫,已經是正常狀態了,沒有應急提示了
7?取消單用戶模式
??exec sp_dboption EIMSDb, N'single', N'false'
?
至此,數據庫恢復完畢,對數據庫進行BAK
總結
以上是生活随笔為你收集整理的SQLSERVER2008-数据库可疑的解决步骤的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 评分9.3,你想要的那本书,来了!
- 下一篇: linux cmake编译源码,linu