您好,登錄后才能下訂單哦!
一位網友誤刪除了郵箱數據庫的日志文件導致報錯且郵箱數據庫無法掛載。
報錯:
解決辦法:
一、使用數據恢復軟件找到了誤刪除的日志文件并恢復后報以下錯誤:(只能抱著試試看的心態,剛刪除也許能有用吧)
《Morning 2018/06/04 10:20:40
Information Store - Mailbox Database B (50196) Mailbox Database B: 由于遇到對現已不存在的數據庫“E:\Database\Mailbox Database B.edb”的引用,數據庫恢復失敗,出現錯誤 -1216。在刪除(也可能是移動或重命名)數據庫之前,數據庫不會處于“干凈關閉”狀態。對于此實例,在重新設置好丟失的數據庫之前,數據庫引擎不會允許恢復過程完成。如果該數據庫確實不再可用并且不再需要,請參考 Microsoft 知識庫中提供的解決該錯誤的步驟,或者單擊此消息底部的“詳細信息”鏈接。》
注意:下文提到的isinteg命令并不一定適用于高版本的EXCHANGE,也不是修復所必須的一個命令。
TIPS: Isinteg 是一種實用工具,可搜索脫機信息存儲區以查找完整性方面的缺陷。還可以修復 Isinteg 檢測到的問題。Isinteg 在命令提示符處運行。
二、使用eseutil命令進行修復
執行ESEUTIL /MH <數據庫絕對路徑>,查看state是 dirtyshutdown還是cleanshutdown.
1.如果是clean shutdown狀態可以執行軟修復
注意:軟恢復過程的一個基本假設是故障未移動、刪除或破壞任何數據庫文件或日志文件,管理員在故障之后也沒有這樣做。
運行一遍exeutil /r,然后使用isinteg.exe修復Pub1和Priv1數據庫 isinteg -s (servername) -fix -test alltests ,重新啟動信息存儲服務,掛載數據庫.
2.如果是dirtyshutdown狀態需要執行硬修復。(更多的是這個狀態)
2.1 eseutil /r E01 /D /I
即使運行硬修復也建議首先使用eseutil /r命令試圖修復下邏輯錯誤。
TIPS:說一下軟修復的一些事項:
1.軟修復的一本基本要求是:{故障未移動、刪除、或者破壞任何數據庫文件或者日志文件,管理員在故障之后也沒有這樣做}。
2.參數介紹下
/R :軟修復參數
/E01: 日志記錄文件名稱,不能包含后綴。01是ex數據庫創建的序號,例如,第一個數據庫日志文件是E00.LOG,第二個數據庫日志文件就是E01.LOG,以此類推。
日志文件的名稱在 安裝目錄下--》mailbox目錄下---》數據庫名稱下面 找到!
/i:恢復的數據庫處于非正常關機狀態(Dirty shutdown狀態),請使用此參數
/D:忽略數據庫錯誤。
2.2 eseutil /mh
然后再次執行eseutil /mh <數據庫句對路徑>,進行狀態的檢查
2.3 eseutil /p
把數據庫文件夾中所有的log、chk、temp.edb文件剪切到別的文件夾 然后執行 eseutil /p <數據庫絕對路徑> 命令直至修復完成。
{注意:也可直接進行ESEUTIL /P 修復,當嘗試無法掛載時再移除log、chk、temp.edb等所有文件}
2.4 eseutil /d
執行eseutil /d <數據庫絕對路徑>進行碎片整理,如果不進行碎片整理可能導致數據庫出現索引和空間分配錯誤。(生產環境建議執行,也可跳過)
2.5 isinteg-s(servername)-fix-testalltests (可跳過,EX13\16也沒測試此命令)
此時應該能夠正常掛載數據庫了。為了在應用程序級別修復數據庫執行上述命令,執行此命令數據庫必須是離線狀態,如果掛載了請卸除數據庫。
isinteg 完成之后,應當報告數據庫中有零個錯誤。如果錯誤計數大于零,請再次運行 Isinteg 直到計數變為零,或在后續運行中計數不再減少。如果無法讓錯誤計數歸零,掛在后建議進行數據庫的遷移。
三、修復完畢,掛載數據庫、重啟信息存儲服務。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。