最近開啟sql server發現DB有好幾個檔案出現(復原暫停)

1. google參考以下教學網站先使用方法2來處理
https://tw.easeus.com/data-recovery/fix-recovery-pending-in-sql-server.html
方法2:將SQL資料庫標記為緊急模式,斷開資料庫並再次重新連接
這些查詢會讓伺服器刪除損壞的記錄,並自動建立一個新的記錄。
|
ALTER DATABASE [DBName] SET EMERGENCY; ALTER DATABASE [DBName] set multi_user EXEC sp_detach_db ‘[DBName]’ EXEC sp_attach_single_file_db @DBName = ‘[DBName]’, @physname = N'[mdf path]’ |
發現跳出一個找不到檔案的路徑???確認錯誤訊息的路徑才驚覺資料庫當初是附加上去,而前幾天我整理電腦時搬移了它!!
所以我就先把檔案放回原來的路徑, 再使用網站提供的方法1來執行復原
方法1:將SQL資料庫狀態設為緊急模式,啟動強制復原
|
ALTER DATABASE [CH09範例資料庫] SET EMERGENCY; GO ALTER DATABASE [CH09範例資料庫] set single_user GO DBCC CHECKDB ([CH09範例資料庫], REPAIR_ALLOW_DATA_LOSS) WITH ALL_ERRORMSGS; GO ALTER DATABASE [CH09範例資料庫] set multi_user GO |
執行後結果復原成功

重新整理資料庫就恢復正常了!!

3. 其實網站有建議不要用手動修復,建議使用工具來復原,避免處理不當導致嚴重問題
如果要手動修復復原暫止(Recovery Pending)狀態問題,則需要輸入相關的SQL查詢。這些都是高度技術性的程序,如果處理不當可能會導致嚴重的問題。因此,在啟動之前備份SQL Server,如果您不是技術專家,也可以直接使用EaseUS MS SQL Recovery軟體,讓它以安全無風險的方式協助您。
但因為我急著處理也大概看得懂語法,所以就直接執行,沒有下載工具解決
總而言之,解決了復原問題真是太好了!很謝謝好心網友Gina整理的教學~
