Exchange 2013數據庫可移植性恢復用戶數據庫(一)
案例講述:
我目前環境中有一套Exchagne01和Exchange02服務器,全部是全角色安裝的exchange2013CU8的系統。
這兩臺服務器同屬一個DAG組,由於特殊原因DAG的故障轉移群集出現問題,無法正常恢復,導致用戶郵箱不能訪問。
目前發現Exchange01上的數據庫被動副本數據復制不正常,Exchagne02上的數據庫主動副本數據內容正常。
此過程中服務器DAG組無法恢復正常,用戶沒法訪問郵箱。多次嘗試也不能將Exchange01或者Exchange02任意一臺從DAG中刪除。
為了盡快恢復用戶訪問,我們在環境中全新部署了Exchange04服務器,該服務器正常運行,可以新建用戶和數據庫副本。
隨後我們將Exchange02服務器上正常的數據庫副本拷貝到了Exchange04的默認數據庫副本目錄下。
如何才能使這個正常的數據庫副本掛載到Exchange04上,使用戶可以正常訪問郵箱
解決方案如下:
使用數據庫可移植性移動郵箱數據庫
https://technet.microsoft.com/zh-cn/library/dd876926(v=exchg.150).aspx
數據庫可移植性是使 Microsoft Exchange Server 2013 郵箱數據庫移動到或裝入同一組織中的任何其他郵箱服務器的功能,此組織運行具有相同數據數據庫架構版本的數據庫的 Exchange 2013。以前版本的 Exchange 的郵箱數據庫無法移動到運行 Exchange 2013 的郵箱服務器。通過使用數據庫可移植性,可以免除恢復過程中容易導致錯誤的多個手動步驟,從而提高可靠性。此外,數據庫可移植性可減少各種故障情況的總恢復時間。
當使用數據庫可移植性恢復郵箱數據庫時,操作系統版本、源上的 Exchange Server 版本以及目標 Exchange 服務器必須相同。 例如,如果 Exchange 2013 郵箱數據庫之前已裝入運行 Windows Server 2012 的服務器,那麽只有在將數據庫遷移到同樣運行 Windows Server 2012 和 Exchange 2013 的服務器上時,數據庫可移植性才能正常使用。
數據庫可移植性
https://technet.microsoft.com/zh-cn/library/dd876873(v=exchg.150).aspx
1. 首先可以看到原始郵箱裏的郵件都在:
以下操作假定用戶原有的數據庫突然崩潰 無法掛載訪問。
2. 用戶郵箱在如下DB中:
3. 然後新建臨時數據庫Temp:
4. Mount 新建的DB:
5. 把用戶mount 到臨時庫上: (如果是整個數據庫的用戶就用Get-mailbox –database “原數據庫名” |set-mailbox –database “臨時數據庫名” )
6. 重新配置郵箱賬號,可以發現郵箱裏面空了,但是郵箱是處於連接的狀態:
PS:此時如果嘗試去打開原配置賬號會發現如下的報錯信息:
7. 可以發現,此時用戶郵箱可以正常收發郵件,但是以前的郵件都沒了:
8. 此時第一階段就算完成了,用戶郵箱可以基本可以正常使用。那麽下一步,就是要是幫用戶恢復以前的郵件。
9. 使用備份裏恢復出來原Edb文件
10. 運行如下命令行新建一個DB:
11. 此時數據庫文件夾裏是空的:
12. 此時Mount該DB:
13. 此時可以發現Recover.edb文件被生成了:
14. 這時把數據庫Dismount 掉:
15. 把備份裏恢復出來的edb文件拷貝到新的DB的文件夾裏,把原DB拷貝到一個新的位置並且把拷進來的DB名字改成Recover:
16. 啟用數據庫的如下屬性:
17. Mount 數據庫
18. 把郵箱設置到這個數據庫上:
19. 此時可以看到用戶的原郵件都回來了:
20. 現在要做的就是恢復臨時庫裏的郵件到這個庫裏面來:
21. 運行如下命令行檢查export請求的狀態。如果發現一直處於queue的狀態的話,重啟replication服務:
22. 此時可以看到那些郵件恢復出來了:
Exchange 2013數據庫可移植性恢復用戶數據庫(一)