客戶公司Exchange Server 2010 郵箱數據庫數據損壞,所幸之前使用DPM進行過數據庫備份,臨時建立一個空庫以知足你們發往郵件的須要。兩天後,原DPM中的數據庫恢復成功,那麼新建的數據庫就須要和還原的數據庫進行合併,操做步驟以下:數據庫
1.DPM中還原數據庫到一個文件夾中,這個操做很簡單,大體以下圖所示:服務器
根據提示將數據庫還原到指定文件夾,而後複製到Exchange的MBX服務器上,例如,複製到e:\olddb下。ide
2. EMS上新建一個數據庫,名稱能夠自擬,而後卸載此數據庫,再對數據庫屬性--維護--「還原時能夠覆蓋此數據庫(T)"勾上。rest
3. 使用eseutil /mh命令進行驗證DPM還原過來的數據庫文件的狀態,以下所示:日誌
c:\program file\exchsrvr\bin>eseutil /mh "E:\olddb\userdb-01.edbblog
必須確保,狀態是cleanshutdown。若是不是,則須要對此數據庫文件進行修復,以下所示:ip
c:\program file\exchsrvr\bin>eseutil /p "E:\olddb\userdb-01.edb"rem
此時,可能會彈出,強制關閉數據庫的提示,點擊,是便可。get
而後,再次查看數據庫文件的狀態。應該就是cleanshutdown。it
4. 將DPM還原過來的數據庫文件名改成剛新建的數據庫文件的名稱,而後mount。若是不成功,則再修復,必須保證是cleanshutdown狀態。
導出全部用戶郵箱至pst文件:
具體命令以下:
$i=ForEach-Object{Get-Mailbox -Database uec-users01}
$Path=New-Item -Path "\\ex-bj-cashub-02\D$\testpst\" -Name $i.alias -ItemType directory -Force
$i | ForEach-Object {New-MailboxExportRequest -Mailbox $_ -FilePath "$Path\$($_.Alias).pst"}
若是是導出單個用戶就很簡單:New-MailboxExportRequest -Mailbox -filepath
查看導出請求: Get-MailboxExportRequest
以下圖所示:
PST文件導入到用戶郵箱:
本示例導入共享文件夾上的全部 .pst 文件。在相應用戶的別名後命名每一個 .pst 文件名。命令爲全部 .pst 文件建立導入請求並將數據導入到匹配的郵箱。
[PS] C:\>Dir \\ex-bj-cashub-02\d$\testpst\*.pst | %{ New-MailboxImportRequest -Mailbox $_.BaseName -FilePath $_.FullName }
查看導入狀態: [PS] C:\>Get-MailboxImportRequest
刪除導入請求:Get-MailboxImportRequest -Status Completed | Remove-MailboxImportRequest
刪除導出請求:Get-MailboxExportRequest -Status Completed | Remove-MailboxExportRequest
注意:
1. 對現有郵箱進行備份
2. 全部郵件恢復成功以後,只在存在收件箱裏,下次再恢復的時侯,不會再恢復,避免重複。 並且是合併,不是覆蓋。
利用PST文件的導出、導入是能夠的,可是效率不高,能夠直接建立一個恢復數據庫,而後直接合並,以下面所述:
1. 建立一個恢復數據庫:
New-MailboxDatabase -Recovery -Name "RDBUSERDB01" -Server mail -EdbFilePath "d:\DBOLD\userdb-01.edb" –LogFolderPath "d:\DBOLD\USEDB01log"
2. 必須確保,狀態是cleanshutdown。若是不是,則須要對此數據庫文件進行修復, /p 直接略過日誌文件以下所示:
c:\program file\exchsrvr\bin>eseutil /p "d:\olddb\userdb-01.edb"
若是報錯,能夠多嘗試兩次,這個250GB的文件,大約1個半小時左右。
也可使用 /r進行軟修復 將日誌文件提交到數據文件
eseutil /r e02 /l d:\olddb\userdb-01log /d d:\olddb\userdb-01。這條命令是將viplong中的日誌commit到vipdb中的數據庫文件。
打開恢復數據庫日誌文件夾,能夠看到日誌文件都以E02開頭,若是不是以E02開頭的,則須要作相應改動。
3. 使用mount-database rdbvip掛載恢復數據庫,也能夠在EMC控制檯中對rdbvip進行掛載。
4. 掛載恢復數據庫以後,在Exchange服務器的EMS中運行restore-mailbox –Identity user1 –RecoveryDatabase rdpuserdb01。這條命令的做用是將恢復數據庫中的user1郵箱內容和當前的user1郵箱進行合併。
若是是合併全部用戶的郵件,則使用命令:
Get-Mailbox -Database userdb-01 | Restore-Mailbox -RecoveryDatabase rdbuserdb-01
最後,卸載並刪除恢復數據庫:
dismount-database –identity RDB 或手工卸載
remove-mailboxdatabase –identity RDB 或手工操做