昨天晚上巴西vps的客戶@我,說他的巴西vps上一個(gè)數(shù)據(jù)庫處于恢復(fù)掛起狀態(tài),我要來資料,登錄上確實(shí)如此,于是先給他備份數(shù)據(jù)庫,開始折騰,又是個(gè)折騰的夜晚,鑿不休則溝深,終于數(shù)據(jù)庫恢復(fù),下面是我整理的一些:
一、總結(jié)
如果數(shù)據(jù)庫處于一個(gè)恢復(fù)掛起的狀態(tài),并且對(duì)數(shù)據(jù)庫做脫機(jī)和分離的操作,報(bào)出數(shù)據(jù)庫文件不可訪問的錯(cuò)誤,可能是因?yàn)閿?shù)據(jù)庫的數(shù)據(jù)文件和日志文件在數(shù)據(jù)庫正常連接的情況下,文件所在的磁盤脫機(jī)了,導(dǎo)致數(shù)據(jù)庫在一段時(shí)間內(nèi)找不到數(shù)據(jù)庫的文件,就把數(shù)據(jù)庫置于一個(gè)恢復(fù)掛起的狀態(tài)了,所以磁盤聯(lián)機(jī)后,重啟數(shù)據(jù)庫服務(wù),重新去找數(shù)據(jù)文件和日志文件找到了,數(shù)據(jù)庫就可用了。
二、處理步驟
1、數(shù)據(jù)庫恢復(fù)掛起截圖
2、出現(xiàn)恢復(fù)掛起的原因
我這里的數(shù)據(jù)庫出現(xiàn)這種原因,是因?yàn)槲业臄?shù)據(jù)庫數(shù)據(jù)文件和日志文件是在存儲(chǔ)上放著的,當(dāng)時(shí)存儲(chǔ)升級(jí)微碼,所以暫時(shí)把該機(jī)器上掛載的存儲(chǔ)盤脫機(jī)了(脫機(jī)升微碼快),存儲(chǔ)微碼升級(jí)好后,磁盤再次聯(lián)機(jī),重啟機(jī)器,數(shù)據(jù)庫服務(wù)也自動(dòng)重啟了,登錄SSMS客戶端,查看數(shù)據(jù)庫的狀態(tài)就是恢復(fù)掛起狀態(tài)了。
3、處理步驟
(1)嘗試restore數(shù)據(jù)庫失敗,提示數(shù)據(jù)庫是離線狀態(tài)
腳本:restore database run with recovery
(2)對(duì)數(shù)據(jù)庫做脫機(jī)操作,報(bào)錯(cuò)
注: 如果能對(duì)數(shù)據(jù)庫脫機(jī)成功,再次聯(lián)機(jī)也有可能解決,要看數(shù)據(jù)庫是什么原因?qū)е聰?shù)據(jù)庫恢復(fù)掛起的。
(3)對(duì)數(shù)據(jù)庫做分離操作,也報(bào)錯(cuò)同樣的錯(cuò)誤
注: 以上對(duì)數(shù)據(jù)庫脫機(jī)和分離都報(bào)出數(shù)據(jù)庫文件不可訪問的錯(cuò)誤,查看磁盤文件,發(fā)現(xiàn)文件是存在的
(4)迫不得已,所以對(duì)數(shù)據(jù)庫服務(wù)做了重啟
注: 重啟數(shù)據(jù)庫服務(wù)后,發(fā)現(xiàn)數(shù)據(jù)庫好了,可以用了,大功告成!