登錄SQL報錯:無法打開數據庫clicksun,恢復操作已經將該數據庫標記為SUSPECT,如何解決?
當前位置:點晴教程→點晴OA辦公管理信息系統
→『 經驗分享&問題答疑 』
![]() ![]() ![]() ![]() 出現這個錯誤提示說明數據庫有部分損壞,可以用下面兩種方法解決:
方法一:嘗試用以下指令修復受損壞的數據庫 當SQL SERVER數據庫狀態為質疑(SUSPECT)狀態時,我們可以用以下方法來處理: 1、修改數據庫為緊急模式:ALTER DATABASE DBName SET EMERGENCY; 2、使數據庫變為單用戶模式:ALTER DATABASE DBName SET SINGLE_USER; 3、檢查數據庫的完整性、修復數據庫日志重新生成,此命令檢查數據庫文件的分配、結構、邏輯完整性和所有數據庫中的對象錯誤。當您指定“REPAIR_ALLOW_DATA_LOSS”作為DBCC CHECKDB命令參數,該程序將檢查和修復報告的錯誤,但是,這些修復可能會導致一些數據丟失:DBCC CHECKDB(‘DBName’); 4、使數據庫變回為多用戶模式:ALTER DATABASE DBName SET MULTI_USER; 5、檢查沒有錯誤則恢復數據庫為正常模式:ALTER DATABASE DBName SET ONLINE。 優點:恢復得當的話,可以保全全部數據; 弊端:可能恢復失敗。 操作方法: 在SQL Server管理器(SQL Server Management Studio)中,新建查詢,執行以下SQL(注意下面的clicksun是點晴OA數據庫的名稱,如果改為了其他名稱,那么clicksun也要相應更改,將紅色文本復制到查詢框中執行): USE master
GO ALTER DATABASE clicksun SET EMERGENCY; GO ALTER DATABASE clicksun SET SINGLE_USER; GO DBCC CHECKDB (clicksun, REPAIR_ALLOW_DATA_LOSS) WITH NO_INFOMSGS, ALL_ERRORMSGS; GO ALTER DATABASE clicksun SET MULTI_USER; GO ALTER DATABASE clicksun SET ONLINE; GO 說明: 1、執行過程中可能會提示錯誤,再次執行即可; 2、如果在執行CheckDB時報錯,然后數據庫可以查詢了,但是發現很多表和視圖查詢時報錯數據庫頁已標記為 RestorePending,可能表明磁盤數據已損壞。要從此狀態恢復系統數據,請按下面方法二執行數據庫備份還原操作。 方法二:用歷史數據庫備份文件恢復數據庫clicksun 采用以上方法還是無法修復數據庫的話,那就只能刪除當前出問題的數據庫clicksun,然后找到點晴安裝目錄“D:\clicksun\files\db”下的數據庫bak備份文件,在SQL Server中恢復備份數據庫clicksun。 優點:一定可以順利恢復; 弊端:會丟失一天的數據。 參考教程: 該文章在 2018/11/6 15:44:31 編輯過 |
關鍵字查詢
相關文章
正在查詢... |