In this tutorial I’ll demonstrate the step by step process for recovering individual mailbox items for an Exchange Server 2010 mailbox using Windows Server Backup. This procedure has the following stages:
- Backing Up the Exchange Server 2010 Mailbox Database
- Restoring an Exchange Server 2010 Mailbox Database to an Alternate Location
- Bringing the Restored Database to a Clean Shutdown State with ESEUtil
- Creating an Exchange Server 2010 Recovery Database
- Restoring Mailbox Items from a Recovery Database
The mailbox user “Alex Heyne” is being used for this tutorial, and he has the following items in his inbox.
Backing Up the Exchange Server 2010 Mailbox Database
The mailbox server was backed up using Windows Server Backup. You can refer to this tutorial for the exact steps to perform Exchange Server 2010 mailbox server backups with Windows Server Backup.
In this scenario the user has deleted the mail items and they have since been purged from the recoverable deleted items folder as well. Because the mailbox database is still in production we’ll need to use a Recovery Database to restore the backup.
Restoring an Exchange Server 2010 Mailbox Database to an Alternate Location
The first step is to perform a restore of the mailbox server backup, redirecting the restore to an alternate location on the server. Start by launching Windows Server Backup, and then in the Actions pane click on Recover to start the Recovery Wizard.
Choose the location of the backup you wish to restore from, and click Next to continue.
Choose the backup date and time to restore from, and click Next to continue.
For Exchange Server 2010 mailbox database restores choose Applications as the Recovery Type. Click Next to continue.
Choose Exchange as the application to recover, and check the box to not perform a roll forward of the database. Click Next to continue.
This step is very important. Select Recover to another location and enter the path to a folder that is different to the location of the live mailbox database or log files. Click Next to continue.
At the confirmation screen if you are happy with the selections you’ve made click on Recover to start the restore.
When the restore has completed successfully you can close the Recovery Wizard.
On the Exchange Server 2010 mailbox server where the database files were restored open Windows Explorer and look at the folder where the restored files are located. Notice how the recovery process has created the original folder structure for the data under the D:Recovery folder.
Those restored paths are important for the next steps.
Bringing the Restored Database to a Clean Shutdown State with ESEUtil
The restored database file will be in a state known as “dirty shutdown”. You can confirm this by running the following ESEUtil command, specifying the path to the restored .edb file on your server.
[PS] D:>eseutil /mh 'D:\Recovery\D_Data\EX201\Mailbox Database EX2 01.edb' Extensible Storage Engine Utilities for Microsoft(R) Exchange Server Version 14.01 Copyright (C) Microsoft Corporation. All Rights Reserved. Initiating FILE DUMP mode... Database: D:\Recovery\D_Data\EX20\1Mailbox Database EX2 01.edb DATABASE HEADER: Checksum Information: Expected Checksum: 0x1d0abd9b Actual Checksum: 0x1d0abd9b Fields: File Type: Database Checksum: 0x1d0abd9b Format ulMagic: 0x89abcdef Engine ulMagic: 0x89abcdef Format ulVersion: 0x620,17 Engine ulVersion: 0x620,17 Created ulVersion: 0x620,17 DB Signature: Create time:12/03/2010 21:20:08 Rand:715244149 Computer: cbDbPage: 32768 dbtime: 21550 (0x542e) State: Dirty Shutdown Log Required: 143-143 (0x8f-0x8f)
Next check the state of the log files with the following ESEUtil command, specifying the path to the restored log files. Note the end of the path is the log file prefix, in this case “E00”.
[PS] D:>eseutil /ml D:\Recovery\E_Logs\EX201E00 Extensible Storage Engine Utilities for Microsoft(R) Exchange Server Version 14.01 Copyright (C) Microsoft Corporation. All Rights Reserved. Initiating FILE DUMP mode... Verifying log files... Base name: E00 Log file: D:\Recovery\E_Logs\EX201\E000000007B.log - OK Log file: D:\Recovery\E_Logs\EX201\E000000007C.log - OK Log file: D:\Recovery\E_Logs\EX201\E000000007D.log - OK Log file: D:\Recovery\E_Logs\EX201\E000000007E.log - OK Log file: D:\Recovery\E_Logs\EX201\E000000007F.log - OK Log file: D:\Recovery\E_Logs\EX201\E0000000080.log - OK Log file: D:\Recovery\E_Logs\EX201\E0000000081.log - OK Log file: D:\Recovery\E_Logs\EX201\E0000000082.log - OK Log file: D:\Recovery\E_Logs\EX201\E0000000083.log - OK Log file: D:\Recovery\E_Logs\EX201\E0000000084.log - OK Log file: D:\Recovery\E_Logs\EX201\E0000000085.log - OK Log file: D:\Recovery\E_Logs\EX201\E0000000086.log - OK Log file: D:\Recovery\E_Logs\EX201\E0000000087.log - OK Log file: D:\Recovery\E_Logs\EX201\E0000000088.log - OK Log file: D:\Recovery\E_Logs\EX201\E0000000089.log - OK Log file: D:\Recovery\E_Logs\EX201\E000000008A.log - OK Log file: D:\Recovery\E_Logs\EX201\E000000008B.log - OK Log file: D:\Recovery\E_Logs\EX201\E000000008C.log - OK Log file: D:\Recovery\E_Logs\EX201\E000000008D.log - OK Log file: D:\Recovery\E_Logs\EX201\E000000008E.log - OK Log file: D:\Recovery\E_Logs\EX201\E000000008F.log - OK Log file: D:\Recovery\E_Logs\EX201\E0000000090.log - OK No damaged log files were found. Operation completed successfully in 0.922 seconds.
Now we can run ESEUtil in recovery mode to bring the database into a clean shutdown state.
[PS] D:>eseutil /r E00 /i /l D:\Recovery\E_Logs\EX201 /d 'D:\Recovery\D_Data\EX201' Extensible Storage Engine Utilities for Microsoft(R) Exchange Server Version 14.01 Copyright (C) Microsoft Corporation. All Rights Reserved. Initiating RECOVERY mode... Logfile base name: E00 Log files: D:\Recovery\E_Logs\EX201 System files: Database Directory: D:\Recovery\D_Data\EX201 Performing soft recovery... Restore Status (% complete) 0 10 20 30 40 50 60 70 80 90 100 |----|----|----|----|----|----|----|----|----|----| ................................................... Operation completed successfully in 0.985 seconds.
Now run ESEUtil to check the database state again.
[PS] D:>eseutil /mh 'D:\Recovery\D_Data\EX201\Mailbox Database EX2 01.edb' | findstr "State:" State: Clean Shutdown
Note: if the database is still in a dirty shutdown state you can try a repair using ESEUtil /p instead. However this should be a last resort as it will cause data loss.
[PS] D:>eseutil /p 'D:\Recovery\D_Data\EX201\Mailbox Database EX2 01.edb' Extensible Storage Engine Utilities for Microsoft(R) Exchange Server Version 14.01 Copyright (C) Microsoft Corporation. All Rights Reserved. Initiating REPAIR mode... Database: .\Mailbox Database EX2 01.edb Temp. Database: TEMPREPAIR1492.EDB Checking database integrity. The database is not up-to-date. This operation may find that this database is corrupt because data from the log files has yet to be placed in the database. To ensure the database is up-to-date please use the 'Recovery' operation. Scanning Status (% complete) 0 10 20 30 40 50 60 70 80 90 100 |----|----|----|----|----|----|----|----|----|----| ................................................... Integrity check successful. Note: It is recommended that you immediately perform a full backup of this database. If you restore a backup made before the repair, the database will be rolled back to the state it was in at the time of that backup. Operation completed successfully in 3.547 seconds.
Creating an Exchange Server 2010 Recovery Database
The next stage of the recovery process is creating the Recovery Database. Launch the Exchange Management Shell. Run the New-MailboxDatabase cmdlet with the following parameters:
- -Recovery:$true (specifies that the database will be a Recovery Database)
- -EdbFilePath (the path to the restored mailbox database file)
- -LogFolderPath (the path to be used for transaction log files, which must be an empty folder)
- -Server (the server that the recovery is being performed on)
In this example the following command is run.
[PS] D:>New-MailboxDatabase RecoveryDB -Server EX2 -Recovery:$true -EdbFilePath 'D:\Recovery\D_Data\EX201\Mailbox Database EX2 01.edb' -LogFolderPath 'D:\Recovery\E_Logs\EX201-RecoveryDB' WARNING: Recovery database 'RecoveryDB' was created using existing file D:\Recovery\D_Data\EX201\Mailbox Database EX2 01.edb. The database must be brought into a clean shutdown state before it can be mounted. Name Server Recovery ReplicationType ---- ------ -------- --------------- RecoveryDB EX2 True None
Note the warning about the database not being in a clean shutdown state. Since we’ve already brought the database to a clean shutdown state we can now mount the recovery database.
[PS] D:>Mount-Database RecoveryDB
Restoring Mailbox Items from a Recovery Database
With the recovery database mounted we can now proceed with mailbox item restores. You can see the available items to restore by looking at the mailbox statistics for the recovery database.
[PS] D:>Get-MailboxStatistics -Database RecoveryDB DisplayName ItemCount StorageLimitStatus ----------- --------- ------------------ Alex Heyne 11 BelowLimit SystemMailbox{f13446dd... 1 BelowLimit
To restore all mailbox items into a sub-folder of the existing mailbox so that they can be inspected use the following command.
[PS] D:>Restore-Mailbox -Identity "Alex Heyne" -RecoveryDatabase RecoveryDB -RecoveryMailbox "Alex Heyne" -TargetFolder Restore Confirm Are you sure you want to perform this action? Recovering mailbox content from mailbox 'Alex Heyne' in the recovery database 'RecoveryDB' to the mailbox for 'Alex Heyne (Alex.Heyne@exchangeserverpro.net)'. This operation may take a long time to complete. [Y] Yes [A] Yes to All [N] No [L] No to All [?] Help (default is "Y"): y
The restored items will now be visible in the mailbox.
Hi
Very interesting post. Do e recover a single mailbox account on a different database?
Pingback: visual studio for mac promo code
Does this procedure affects in anyway the production database? I mean, is this procedure safe enough to run on production enviornment?
Hi Paul:
Great post, thanks! The oldest recovery point I have is approx. 1 week old. Is there a way to cfg. Windows Svr. Backup to keep older Exchange backups? I know at this point it’s too late but going forward I’d like to be able to have at least two months back.
Thanks.
The Real Person!
Author Paul Cunningham acts as a real person and passed all tests against spambots. Anti-Spam by CleanTalk.
I believe it self-manages that based on how much available disk space their is on the backup volume. The more capacity you have, the more backups it will retain.
Got it, thanks!
Hi, I was not able to mount the Recovery database from Powershell, so I mounted in EMC. However, I cannot see the contents (Mailboxes) of the database in either EMC or running Get-MailboxStatistics -Database command in Powershell. It says the database does not exist. What can I be doing wrong? Thanks.
The Real Person!
Author Paul Cunningham acts as a real person and passed all tests against spambots. Anti-Spam by CleanTalk.
You do need to follow the procedure. Saying “not able to mount the recovery database” doesn’t tell me much. That is where you should focus your efforts, because if the recovery DB won’t mount then obviously you won’t be able to recover data from it.
Thanks for your response. I ended up contacting the person who set up the Exchange server, and what he found was, in his words, “It turns out your recovery database had 2 issues (a) you pointed it to the location “d:\recovery” and Exchange does not recognize that location as a valid root path for databases (b) it was not marked as a recovery database.” After he corrected this we were able to recover the mailbox.
Saved my day. Thank you!
Hi Paul Cunningham,
Thank for your post!
Your post has command restore individual mailbox, but if I need to restore all mailbox from a recover database, should I do that.
Thanks & regards,
The Real Person!
Author Paul Cunningham acts as a real person and passed all tests against spambots. Anti-Spam by CleanTalk.
If you’re restoring all of the mailboxes then each one is a separate restore request. Basically treat them all as individual mailbox restores.
If I have more mailbox (100, 500,…), so it is very hard for restoring mailbox.
The Real Person!
Author Paul Cunningham acts as a real person and passed all tests against spambots. Anti-Spam by CleanTalk.
You can use the Get-MailboxStatistics command shown in the blog post above to list the mailboxes that are in the recovery database. You can pipe that in PowerShell to the Restore-Mailbox command. So it will be one single PowerShell command to perform all of the restores, however you should carefully test that to make sure you get your syntax correct and don’t accidentally restore the wrong data into the wrong mailbox.
Awesome Tutorial, Fully saved the day.
Thanks heaps!
Pls Help me with this error.
I Cannot restore the mailbox
\Restore2k15\Recovered Data – 2k15AgoQ4Journ – 02/13/2017 14:53:37
0a263ee4-9961-40ab-88b0-d8a65d59d51a
/O=QUISQUEYA/OU=EXCHANGE ADMINISTRATIVE GROUP (FYDIBOHF23SPDLT)/CN=RECIPIENTS/CN=2K
5AGOQ4JOURN6BC
2k15AgoQ4Journ
8b79c000-8eb5-4b36-abc8-b550139b10c0
0
0
0
Restore
Move
2/13/2017 2:53:40 PM
2/13/2017 2:53:40 PM
-1056749260
Error occurred in the step: Opening source mailbox. Failed to open mailbox by GUID
ith error: An unknown error has occurred.
C:\Program Files\Microsoft\Exchange Server\V14\Logging\MigrationLogs\restore-Mailbo
20170213-145337-5416200.xml
The Real Person!
Author Paul Cunningham acts as a real person and passed all tests against spambots. Anti-Spam by CleanTalk.
I can’t see your environment so I can only suggest you double check that the recovery DB is mounted and that you’re using the correct GUID. If you’re still stuck then open a support case with Microsoft so that they can see your issue and help you with it.
How to restore with all sub folders in the inbox. because for me folders are all empty.
This is how i managed to restore the sent items.
New-MailboxRestoreRequest -SourceStoreMailbox “username” -SourceDatabase DB09-RDB -TargetMailbox “username” —IncludeFolders “#Sentitems#” –AllowLegacyDNMismatch
Disregard my previous reply. I successfully ran the recovery a second time. However, I do have a recovery database created from a trial run I did some time ago. Can I use that recovery database again?
Hi Paul,
I have Exchange 2010 SP3 with four email databases and a public folder database, backed up nightly using Windows Server Backup. I am trying to recover a single mailbox from one of the databases to find some hard-deleted emails. I have gone through the recovery wizard in Windows Server Backup and recovered the databases. I have run through ESEUTIL to confirm the shutdown state of the database:
eseutil /mH C:recovery-12-21M_MDB04MDB04.edb
This confirmed a dirty shutdown state.
I then ran the following command to check the status of the logs: eseutil /ml C:recovery-12-21M_MDB04_logsE03
The result was that no damaged log files were found. I then tried to run the following recovery command:
eseutil /r E03 /i /l C:recovery-12-21M_MDB04_logs /d ‘C:recovery-12-21M_MDB04’
As a result, I got the following message: “Recovery has indicated that there might be a lossy recovery option. Run recovery with the /a argument.”
That was followed by: “Operation terminated with error -528 (JET_errMissingLogFile, Current log file missing) after 0.109 seconds.”
Googling that message indicated that I might have to resort to a hard recovery with the /p option, with a possible risk of data loss. To me, that would defeat the purpose, and I’ve never run a hard recovery or a lossy recovery before. As I mentioned before, there don’t appear to be any logs missing or damaged for this database (the list is too extensive for a screenshot but I watched it as it ran and didn’t see anything other than an OK after each log file). Can anyone offer any suggestions?
Thanks in advance.
Michael
disregard above ^
how do I restore a mailbox to another database? or merge/import the restore mailbox to another mailbox on another database
Hi Paul
It’s staying in a Dirty Shut down for me so I’m Just running the /P switch for this.
Doing this, will it recover the Calendar items? As I converted a User Mail box calendar to a “Room” Via Exchange 2010, which in the SBS2011 console Marked the account as Disabled, I went to remove the user, Un-Checking “Delete Mailbox” and Checking “Delete User Folders”. This Failed to remove the User Folders saying I didn’t have permission, So I manually Deleted it in the location the user folders where residing (redirected folders).
I then noticed can not access the “room” calender I converted (using “set-mailbox NAME -type room”), loosing all the appointments that was in there. I have checked and it’s not in the “Recipient Configuration”>”Disconnected Mailbox” area in Exchange .
Kind regards
Adam
You can ignore that as I spotted the post when Tom says about this on December 13, 2011 at 7:53 am. I am going to see what I can get from it when I try the restore
The Real Person!
Author Paul Cunningham acts as a real person and passed all tests against spambots. Anti-Spam by CleanTalk.
You can’t remove the user. Every mailbox needs an associated user account, even room mailboxes. Exchange disables the account for room/equipment/shared mailboxes because the credentials shouldn’t be used to directly log on to anything. But the account itself is still needed.
Hi Paul.
Great article!
During the process of restoring the mails, I can see that in fact mails and folders are starting to appear in my outlook client, but all of a sudden I get an error.
Processing data from remote server failed with the following error message: The WinRM client cannot complete the operation within the time specified.
It sounds like some kind of timeout faliure, but I can’t find anything helpful on Google about this
It happens after importing about 3000 mails. the mailbox I want to retore has 11.000 mails on 3gb of data.
I had to run the repair step to get the shutdown state to clear.
I have increased MaxTimeoutms and IdleTimeout in winrm config. doesn’t seem to work.
Does anyone following this thread have any ideas what to do?
Thanks, Rene
Hi Paul,
Thanks for the beautiful explanation. Article Worked for me………….Many thanks
So, once you are done with the Recovery Database, what are the steps for removing it?
The Real Person!
Author Paul Cunningham acts as a real person and passed all tests against spambots. Anti-Spam by CleanTalk.
Dismount it. Remove it. Delete the files. You can see the specific commands at the end of this article.
https://www.practical365.com/restoring-exchange-server-2016-mailboxes-and-items-using-a-recovery-database/
I succesfully mounted 147GB recovery database.
When I run get-mailboxstatisics it returns nothing.
If I try to restore a mailbox, it says it doesn’t exist.
What am I doing wrong?
Exchange 2007 / database issues / i think i have it to a clean shutdown state / i try to run in cmd as admin /
C:Program FilesMicrosoftExchange ServerMailboxFirst Storage Group>eseutil /r “Mailbox database.
edb”
Operation terminated with error -1003 (JET_errInvalidParameter, Invalid API parameter)
I cant figure out why? Any thoughts please (yes nice articles above!) please i am working on this strong, each day now every day and am checking the post for response every hour as i am almost completed with this nightmare but am left with couple errors this being one … i have mounted a data base after success of eseutil / p … but left with two errors, no find log E00 and signature issue which i think is related to the E00.log file being missed … but i took out E00.log etc and try to run eseutil /r and thus i am stuck at:
Operation terminated with error -1003 (JET_errInvalidParameter, Invalid API parameter)
please any thoughts?
Thank You!
Gary
take a look at the article again, eseutil /r requires a number of things that are missing from your command.
For instance
your missing the log file prefix, the transaction log path /l, the database path /d (you don`t need the .edb just the path)
ESEUTIL /r E01 /l “path of your restored transaction log” /d “path of your edb”
for example
ESEUTIL /r E01 /l “T:NO-USERS-HERE-VEEAM-Test” /d “R:NO-USERS-HERE-VEEAM-Test”
Anyone getting “Operation terminated with error -528 (JET_errMissingLogFile, Current log file missing) after 0.16 seconds.” when you try to run eseutil /r might try opening powershell as Administrator. It took me a while to figure that out, but once running PS as admin the restore went fine and the database state became clean shutdown
The Real Person!
Author Paul Cunningham acts as a real person and passed all tests against spambots. Anti-Spam by CleanTalk.
Or run it in CMD. ESEutil isn’t a PowerShell cmdlet.
You safe my life! Thank you . Now I am in the process to restore from crashed server in to a new server 2008. But got one question. The restore is very, very….. very slow, is normal? Is the first time I do using this way. Is there anyway to improve the speed? Is something to do with the memory?, actually store.exe consuming 90% of the total. Do I have to limit the store.exe memory limits?
Once again, you have a tutorial that saves my bacon. Can the Restore-Mailbox command be modified to restore only the user’s Contacts or Notes?
This article is great. Does it work with Exchange 2007? I got all the way to create the recovery database but it doesn’t like my “-server” parameter. I thought maybe I could exclude it since I’m running it from the Exchange server. Then it doesn’t like the -recovery parameter. Is it a little different with 2007? Thanks
The Real Person!
Author Paul Cunningham acts as a real person and passed all tests against spambots. Anti-Spam by CleanTalk.
It’s different for Exchange 2007. Similar concept though.
https://technet.microsoft.com/en-us/library/aa997694(v=exchg.80).aspx
You just saved my life 🙂
Worked perfectly. Thanks very much
I restored the database to F:/Recovery but I only see log files and a 157Mb edb file when I navigate to the “Public Folder Database …” sub folder. The windows backup was over 300Gb. Did I do something wrong?
Dirtyshutdown in Exchange server is really a very critical issue and sometimes leads to serious data loss situations. Here are some simple and quick tips to fix this problem: http://rickytechblog.wordpress.com/2012/08/17/tips-to-fix-exchange-dirty-shutdown-state-in-exchange-server/
There are some manual and third party solutions which effectively handles this dirtyshutdown issue. We successfully resolved this situation in our Exchange 2010 server SP2 with the recommendations given there.
Jim
Hi,
Nice article, but i am facing an issue while recovery. Event ID 739 — Application Recovery. Recovery is not successful. I am trying to take backup on another location. My Backups are on local drive and i want to recover them.
I’ve been working my way through this process for which I’m exceedingly grateful. After a few hiccups (all my own!), I have successfully created the Recovery Database.
However, I now get an error when I try to mount RecoveryDB. The error message starts:
Couldn’t mount the database that you specified. …
.. and then continues at length.
I’ve got a Word document containing a screen capture both of the New-MailboxDatabase command succeeding, followed by the Mount-Database failing with full error message.
If you could spare the time to have a look at it please email me and I’ll send it across. I realise the process was written sometime ago and I did have to modify the commands as Restored files weren’t quite in the places as shown, but I’m fairly sure I got to the Database Recovery and it worked ok.
Many thanks for your time.
Incredibly helpful article! Very clear and concise. Thank you!
I got the the part where I have mounted the RecoveryDB. Now, I would like to restore the mailboxes to a new Mailbox Database so I could extract them to PST, since all our users are moved to use cloud/hosted-exchange. My ultimate goal is to extract the mailboxes to pst. Is there a direct way to extract mailboxes to pst from RecoveryDB or do I have to create a new, normal Mailbox Database, then from there, I could extract it to pst? If the latter, how do I transfer the mailboxes from RecoveryDB to new mailbox database? Thanks in advance.
The Real Person!
Author Paul Cunningham acts as a real person and passed all tests against spambots. Anti-Spam by CleanTalk.
Look at the “restoring entire mailbox” scenario here (which also covers restoring to a different mailbox)
https://www.practical365.com/restoring-mailbox-exchange-server-2013-recovery-database/
Pingback: Fix Jet Error 1811 Eseutil /mh Windows XP, Vista, 7, 8 [Solved]
Hi Paul
We named the database RecoveryDB. No issues encountered, the database restored was in a clean state. It’s an archive database so I did an Get-Mailbox username | Fl Name, Archive*
which gave me the Name, ArchiveDatabase and ArchiveGuid.
When I ran Restore-Mailbox -RecoveryDatabase RecoveryDB -RecoveryMailbox 71bdc121-739c-49b8-b905-2d5a73143220 -TargetFolder Archive_RestoreDecember2014 -Identity “Deanne Barton” to put it in my database, it comes back with Mailbox “71bdc121-739c-49b8-b905-2d5a73143220” doesn’t exist on database “RecoveryDB”.
Hi Paul,
May I un-mount the recoveryDB after restored individual mailbox ?
Many thanks.
The Real Person!
Author Paul Cunningham acts as a real person and passed all tests against spambots. Anti-Spam by CleanTalk.
Yes you can unmount it and/or remove it once you have finished with your restores.
Hi Paul
This is great post.
I have one problem though, when I run the Get-MailboxStatistics -Database RecoveryDB | ft -auto or just Get-MailboxStatistics -Database RecoveryDB it doesn’t return anything just puts in a new command line.
Any suggestions would be great?
The Real Person!
Author Paul Cunningham acts as a real person and passed all tests against spambots. Anti-Spam by CleanTalk.
Assuming you’re replacing “RecoveryDB” with the name of your recovery database, its possible something has gone wrong earlier in the recovery process. Did you encounter any issues along the way?
When I run mailboxrestorerequest is fails at 35%. Then run a resume fails at 10%
[PS] C:\>New-MailboxRestoreRequest -SourceDatabase recoverydatabase03 -SourceStoreMailbox ‘Mike Berg’ -TargetMailbox Mailboxrecovery -TargetRootFolder Restore -AllowLegacyDNMismatch
Any suggestion to resolved so mailbox restores completed?
The Real Person!
Author Paul Cunningham acts as a real person and passed all tests against spambots. Anti-Spam by CleanTalk.
Look at the restore request or restore request statistics (using Get-MailboxRestoreRequestStatistics) to determine the cause of the failure so you can troubleshoot it further.
PS, Paul any cleanup recomended after restore?
The Real Person!
Author Paul Cunningham acts as a real person and passed all tests against spambots. Anti-Spam by CleanTalk.
Sure. If you’re finished restoring you can remove the recovery database and then remove the files from the file system.
Thanx mate, excellent guide may god bless you with 19 virgins, 28 camels and 7 goats
Thanx heaps mate works great, you are a legend, love from land down under
does anybody know if this method can be modified to recover a Public Folder database ?
Thanks for your post.
I restored a mailbox with the following command (Restore-Mailbox -Identity “My_Mail” -RecoveryDatabase RecoveryDB -RecoveryMailbox “Mail_With_Problem” -TargetFolder Restore) and all is ok, but, I need to remove this mailbox restored with problem of My_Mail.
How I do to remove this mailbox (Mail_With_Problem) of my original mail (My_Mail) ??
Pingback: Restoring a mailbox from a NTBackup of Exchange | NetMuppet
Flavio,
Thumbs up dude!!! thumbs up
Pingback: How to Restore an Individual Exchange 2010 Mailbox with Windows Server Backup | Sparkez IT
Pingback: Restore an Exchange 2010 Mailbox | JBcomp.com - computerizing the world
Pingback: Restore an Exchange Server 2013 Database to a Recovery Database
Hi Paul,
great article…!! but i have issue while restore. when i select application restore, it fails with below error
Error Restoring D:DB2.edb during read: Error [0x80070020] The process cannot access the file because it is being used by another process..
can i do this through file level restore opton?
Thanks
You may check application event 1006 for successfully mailbox restoration.
Pingback: Exchange 2010 – Restore Mailbox Database từ DataFile và Logfile | MSTECHMAG
After we recover from the recovery mailbox. Whats the proper way to dismount it from the user mailbox, so they dont see it?
What command?
Thank you very much for the Info. worked for me like piece of cake.
Keep up the Good work.
I backup only the EDB file using Windows Server Backup I do full backups everyday and it clears the transaction logs. Then I check the time stamp of last full backups and all is good.
Today I needed to restore a DB and I use your guide. You mentioned restoring logs files but because I don’t backup the logs instead of doing a recovery mode with eseutil I just run repair and I can mount and retrieve mailboxes.
Is it safe to do it like this in terms of not doing backups to the logs?
Thanks.
Thank you time saver.
Make sure email account exists in Exchange (in case it was deleted) before last step.
Pingback: Exchange Restores and PowerShell Scripting Games | Sean's IT Blog
Great! Thanks you! i used it with success
Nevermind, found out how to.
Is there a way to specify the BadLimit parameter during the restore-mailbox operation?
Hi,
Thanks for sharing very useful exchange 2010 backup & restore information, but can can one clarify is there any GUI mode available in exchange 2010 instead doing this restoration process through exchange management shell. (i.e in exchange 2007 we can do the same in gui through recovery management which is available under tools in exchange management console). If possible please share how to do?
Awaiting your reply post.
Thanks & Regards,
Jagannath Patro
Great article, very easy to use. I did run into the issue with not having to specify the database name in the recovery step, but was successful in the end. My one question, how to remove the recovery database once I have restored the needed information? I am sure it is very simple, but it would complete this article perfectly. Thanks for the assist.
Thanks the article was easy to follow and use. However, I did have a bit of trouble restoring/moving the contents of one mailbox due to: Error occurred in the step: Moving messages. This mailbox exceeded the maximum number of corrupted items specified for this move mailbox operation., error code: -1056749110. The amount of items that could not be moved was stated in the log file. And after using the -BadItemLimit arguement the process completed successfully.
Thanks for the article!!
Best Regards,
Scott Brozinick
This is a ridiculously complex procedure for such an everyday kind of task.
Progressing slowly and learning to despise Microsoft more by the hour.
The Real Person!
Author Paul Cunningham acts as a real person and passed all tests against spambots. Anti-Spam by CleanTalk.
On the other hand, Windows Server Backup is free.
If you want something easier to administer there are plenty of good third party backup products that have wizard-driven interfaces for these operations and handle all the complex stuff automatically for you.
Hi Paul,
Thanks for sharing very useful exchange 2010 backup & restore information, but can you clarify is there any GUI mode available in exchange 2010 instead doing this restoration process through exchange management shell. (i.e in exchange 2007 we can do the same in gui through recovery management which is available under tools in exchange management console). If possible please share how to do?
Awaiting your reply post.
Thanks & Regards,
Jagannath Patro
Hi, Just wanted to say thanks a lot for this guide. IT is really useful and i was able to complete the steps without any issues
Regards
Stephen
Hello Paul,
Great article.
However, say my restore does not have the “Applications” option, as I have my database sitting on another volume (NAS, SAN, etc…) that is not on the actual EX server. It is connected via iSCSI and is presented to the EX server as a volume. In any event, can I restore using the “Files and Folders” or “Volumes” option and still use the Recovery Model? Or, does the creation of the recovery database expect to find an exchange aware restored mailbox database file? I understand that I would still have to run eseutil /mh and /r and possibly /p.
Paul does the recovered mailbox includes calendar information also?
The Real Person!
Author Paul Cunningham acts as a real person and passed all tests against spambots. Anti-Spam by CleanTalk.
Should do, yes.
Hi Paul,
Thanks as usual for a great article on Exchange topics. I had one query, when I export the emails to pst, I get the folder structure which the user had created in tact, but I cannot find the emails inside these folders. I get emails which were in the Inbox. Any suggestions? Thanks in advance.
Great article Paul.
What is the proper way of removing the recovery database once the restore has been completed?
Single mail item.
The command seems success full but it does not restore the email. Not sure why?
Same here – the filtering of specifics to only grab one or a few emails runs fine, but not a thing is actually restored.
Boo!
What is the best way to determine which mailbox a user that no longer exists would be stored on?
I need to grab data from a backup from about 7 months ago for a user no longer with the company and would really like to know where to grab it from because we have a large number of mailbox db’s.
Thanks, great post!
Hi Paul,
when i trying to recover mailbox form windows backup then its not completed error (prepare the component for recovery failed detailed error, the specified component was not a part of the backup).
please suggest ,how can i recover it.
and also if u don`t mind please send me you Skype id / mail id.
thanks for your support.
Regards,
Abhay
Hi Paul,
This tutorial on restoring mailboxes is awesome.
I am trainer and wanted to show my students a demonstration of this. your tutorial helped me do it. thanks a ton.
Rajesh
Thanks a lot for this tutorial!
Hi Paul.
I’m stuck at the point for changing the DB state. Here is what I get when running the script:
[PS] C:Windowssystem32>eseutil /r E00 /i /l “D:RecoveryD_Exchange ServerMailboxUsersDB” /d “D:RecoveryD_Exchange ServerMailboxUsersDBUsersDB.edb”
Extensible Storage Engine Utilities for Microsoft(R) Exchange Server
Version 14.00
Copyright (C) Microsoft Corporation. All Rights Reserved.
Initiating RECOVERY mode…
Logfile base name: E00
Log files: D:RecoveryD_Exchange ServerMailboxUsersDB
System files:
Database Directory: D:RecoveryD_Exchange ServerMailboxUsersDBUsersDB.edb
Performing soft recovery…
Recovery has indicated that there might be a lossy recovery option. Run recovery with the /a argument.
Operation terminated with error -528 (JET_errMissingLogFile, Current log file missing) after 0.0 seconds.
The previous one ran successful as all the logs shows OK.
Am I doing something wrong?
Thanks!
You just got lucky the first time…
I have that issue all of the time and the solution is to give up and just go to the eseutil /p command and ignore all of the fearmongering about corruption…it works.
Sure, it’s nice if you can run through the t-logs and really clean the DB, but I have always seen this error and have to skip right to the /p option anyway (especially to avoid wasting all of that extra time for the “safer” command to get to 99% and fail).
Hi Paul
Thanks for this great tutorial.
I have restored a user mailbox using your step-by-step.
Can you include in this tutorial the steps to dismount and remove the database?
Thanks again and Best Regards
Hi, yes, I haven´t restoration logs, I can continue with the following steps?
Your tutorial is really an eye-opener! Even my consultant said single mailbox recovery is not achievable with Windows Backup but you have proved it is quite the opposite.
Great stuff, keep doing so Paul!
Hi Paul,
Thanks a lottttttttttttttttttttttttttttttttttttttt , I would say this world needs a Techy guy with kind heart like you so that we can create another exchange universe 🙂
Really your videos helped me a lot in learning these things
Keep doing the good work Man 🙂
Hi, hope you can help.
Managed to get through all the steps and display the recovery database statics,. When I try to recover the mailbox with the following command ‘ Restore-Mailbox -Identity “user″ -RecoveryDatabase rdb1 -RecoveryMailbox “user″ -TargetFolder recovery’ I get the following error:
Error was found for user because: Error occured in the step opening source mailbox. Failed to open mailbox by GUID with error. The operation failed., error code -1056749260
Thanks in advance
Link is very helpfull to recover and restore the database.
i have a question that can we restore the one exchange database on second one exchange database. both domains are different
The Real Person!
Author Paul Cunningham acts as a real person and passed all tests against spambots. Anti-Spam by CleanTalk.
You can restore databases from different servers as long as both servers are in the same Exchange organization.
Awesome tutorials:)
Thanks a lot:)
Hi Paul,
Got solution. Need to select volume that Exchange DB & logs hosted. It is working.. Application option is visible for recover.
Thanks,
Amit
Hi Paul,
Thanks for good article. One question can you tell me how to register MS Exchange 2010 application with Windows server backup. When I come to restore the backup in the Select recovery type screen
the option for Applications is greyed out. It says that you can recover applications that have registered with Windows Server Backup.
Please let me know,
Thanks,
Amit
Hi Paul
Have you got any tricks or advice on a good way to restore missing calendar entries for one user? I want to avoid double-ups, hundreds of reminders and resending meeting invites.
Thanks
Worked for me… MANY THANX!
Patrick
Great and clear article !!!!!!!!!!!
Thank You
Bravo PAUL
Merci
Paul,
This information is great, but I do have one question.
We do use a third party for backup (Symantec NetBackup). When I restore from the tape backup, I need to restore the .edb file and the logs files. My database.edb has multiple mailboxes on it and quite large (over 200GB). When I do the restore, I need to have a location that is big enough to accomodate both that large file, as well as the log files?
Thank You
Ok, I pulled what I need out of the mailbox. How do I safely unmount and remove RecoveryDB?
Thanks, thanks, thanks Paul!
It works like a charm.
Hey Paul,
Your article was right on. I am able to recover the entire mailbox to a Recovery Folder. What is the best way to just recover a users calendar? Thanks
As posted by Rodrigo. When you replay the logs don’t specify the database file name. If you do the database will remain in a dirty state. I wasted 4 hours on an eseutil /p
Other than that – its all good. Really helpful article.
i cannot make restore from recovery database and it says that mail box doesn’t exist please can you give me hint?
I was able to get the database in a clean state but when I try to create the recovery database I get an error that says “Quota violation”. anyone know what might be causing this? Thanks
The Real Person!
Author Paul Cunningham acts as a real person and passed all tests against spambots. Anti-Spam by CleanTalk.
Is that the full wording of the error message?
The error says “Failed to connect to target server “MAIL”. Error: WMI exception occurred on server ‘myserver.domain.com’: Quota violation
+ CategoryInfo : InvalidOperation: (:) [New-MailboxDatabase], InvalidOperationException
+ FullyQualifiedErrorId : 79A1D1AB,Microsoft.Exchange.Management.SystemConfigurationTasks.NewMailboxDatabase
The Real Person!
Author Paul Cunningham acts as a real person and passed all tests against spambots. Anti-Spam by CleanTalk.
The only two references I can find to that error are these (one mine, one another site):
https://www.practical365.com/quota-violation-error-when-moving-exchange-2007-storage-group-log-path
http://www.leedesmond.com/weblog/?p=639
Both suggest it may be an issue with free disk space or the amount of existing transaction logs on the disk.
My IPFiltering.edb database is in dirty shutdown after relocating the database location to a new logical drive, I can see the edb, checkpoint, jrs, trn and trntmp. I have been trying to run eseutil /ML to check the status of the transaction logs so I can attempt first a soft recovery with /R but I’m missing the log prefix, I’m fairly sure is not E00, so if anyone out there can help me that would be great!!!!
Silly me, I had the right log prefix “trn” I just had typos in the directory path. After I fixed that I was able to recover my database, its now in clean shutdown and the Transport service is running again 😉 Thanks Paul!!!!!!!!!
Fantastic article that saved me a lot of time and effort! Thank you so very much, you rock!
Question:
After the user recovers the needed email, how do I and should I un-mount the restore database so that it is no longer active on the exchange server. I also assume that the user must delete “Restore” folder manually once done with it. Correct?
Thank you in advance …
All my account was restored ok except one account; the error message is:
Error occurred in the step Moving messages.Failed to copy message to the destination mailbox store with error:MAPI or unspecified service provider.ID no:00000000-0000-00000000,error code: -1056749164
in event viewer the id error is 1008
Did you ever find a fix for this one mailbox, we are having the same issue on just one mailbox.
Thanks,
Jaime
Dear Sir; I have created Recovery database called RDB1 the foder of recovery database called RDB1 the database (edb file which is in clean state ) called RDB1.edb the log file is into the same folder in sub folder called RDB1.
Thank you for your response. My EDB is on clean shutdown state
The Real Person!
Author Paul Cunningham acts as a real person and passed all tests against spambots. Anti-Spam by CleanTalk.
Do the file paths for the Recovery Database exactly match the location and name of the EDB file itself?
I did all the steps in vmware successfully in vmware Scenario I have all three roules and dc in one box and I colud retrieve my all inoboxes from The Recovery database. When I implement this scenario in my actual server which memeber of domain and contain three roules the step of mounting database faild my event viewer ID is
Log Name: Application
Source: ExchangeStoreDB
Date: 2/19/2012 9:17:36 AM
Event ID: 231
Task Category: Database recovery
Level: Error
Keywords: Classic
User: N/A
Computer: EMAIL.mydoamin.com
Description:
At ‘2/19/2012 9:17:35 AM’, the copy of database ‘RDB2’ on this server encountered an error during the mount operation. For more information, consult the Event log on the server for “ExchangeStoreDb” or “MSExchangeRepl” events. The mount operation will be tried again automatically.
Event Xml:
231
2
1
0x80000000000000
19656
Application
EMAIL.mydomain.com
RDB2
80b29168-519f-4f99-9711-193216ca6b5e
Store
GenericMountFailure
RDB2
Store
There is only one copy of this mailbox database (RDB2). Automatic recovery is not available.
2/19/2012 9:17:35 AM
ps:>mount-Database RDB2
Couldnot mount the database
Please advice
The Real Person!
Author Paul Cunningham acts as a real person and passed all tests against spambots. Anti-Spam by CleanTalk.
Is your EDB file in clean shutdown or dirty shutdown state?
Can not thank you enough for this website! Had problems using esutil until I upgraded Exchange 2010 to SP2. After that, it worked like a charm. Again, thank you so much for taking the time and effort to share your knowledge and expertise!!!
Hi Paul.
Great post. But do you know how to get around problem with mailboxes that’s failing ?
Have some mailboxes failing from 10-99%.
I want to restore a email from an archive. How do you get Exchange to recognize an archive file from the vault?
The Real Person!
Author Paul Cunningham acts as a real person and passed all tests against spambots. Anti-Spam by CleanTalk.
“Vault” as in Enterprise Vault?
No, vault as in off site storage. Data is gone from server but is on a backup tape in storage.
The Real Person!
Author Paul Cunningham acts as a real person and passed all tests against spambots. Anti-Spam by CleanTalk.
Either restore from the tape onto the file system of the server, and use the same process above to create an Recovery DB using the restored files.
Or you can create the Recovery DB first and use it as the target for the restore from tape.
More about Recovery DB’s here:
http://technet.microsoft.com/en-us/library/dd876954.aspx
re you saying I have to restore the entire database to restore one email? I make a full backup every night. Shouldn’t I be able to copy that backup to the server and restore one email? or do I have to have Symantec Vault to do that?
The Real Person!
Author Paul Cunningham acts as a real person and passed all tests against spambots. Anti-Spam by CleanTalk.
Aren’t “restore the entire database” and “copy that backup to the server” basically the same thing?
One way or another you need to get the database off tape and onto disk to be able to extract mail from it. You can’t do it directly from the tape.
So whether you’re creating the RDB first and restoring from tape into it, or restoring to disk from tape and then creating an RDB to use the restored files, one way or another you’re restoring the database in full.
Some backup tools have the capability to do per-item recovery whereby they do all the hard work for you, but you need to be backing up with that feature enabled first. If you’re just doing DB-level backups, you’ve got to restore the full DB to get mail out of it.
I use Symantec withe the Exchange Agent. I make a full backup every night. When I need to restore something say from a year ago from a regular backup, I copy the backup to the server, inventory it and restore one or many files. With exchange I copy the backup to the server and do an inventory, but I cannot restore anything from it. Am I backing up the Exchange incorrectly?
Great work here. Worked for me with just a little fat-finger-frustration, but worked PERFECTLY none the less once I typed without typos,
However, now I have a new [related] question. How do I REMOVE the recovery database (dismount DB, delete files, etc.)?
Any help wit this appreciated
Hi Paul
Thanks for the reply.
This Settings work perfectly and i have checked it. i have one query regarding the service which is responsible for moving the log files to the passive copy in DAG and also i want to know in exchange 2007 CCR which one is responsible means which service is used by this clustering or high availibility solutions.
Another query is if i wanted to check the health of the DAG which exchange powershell command i need to enter.for exchange 2007 ccr the command is get-clustermailboxserverstatus.
Thanks for the support you have provided.
Regards,
Devang Patel
Devang, I believe that is the downside to Windows Server backup being that you need to do a full restore. My advice is to restore to an External Drive due to space. Symantec Backup Exec has a way to do a single mailbox restore without needing to do a full restore of the database (I believe), which is the advantage of that type of program.
Jason, I would paste the exact command you used, I believe I had to mess around a little bit with the command, but try to put the pathing in a single quote ‘ on the beginning or the end. If that doesn’t work, try without the quotes.
Thank you Tom for your quick reply.
I have another query about DAG Database backup. i have two mailbox serves with each having one active and one passive databases. when i tried to take the backup of active database on mailbox server 1 it shows warning.
The reason would be the another passive copy of Mailbox Server 2 mailbox database on that server. if i’ll make that passive copy active that means mailbox server 1 has two active copies and mailbox server 2 has two passive copies and tried to take the backup of mailbox server 1 passive copy it will be done without any warning.
i’m using Windows Server 2008 R2 and Exchange Server 2010 Sp1.
Regards,
Devang Patel
The Real Person!
Author Paul Cunningham acts as a real person and passed all tests against spambots. Anti-Spam by CleanTalk.
Hi Devang, you mean this warning?
https://www.practical365.com/event-id-2137-windows-server-backup-completed-warnings-exchange-2010-mailbox-server
I tried running the first command and I got this.
Initiating FILE DUMP mode…
Error: Access to source database ”C:dbMailboxDatabaseMailboxDatabase.edb’
failed with Jet error -1022.
Operation terminated with error -1022 (JET_errDiskIO, Disk IO error) after 0.15
seconds.
The Real Person!
Author Paul Cunningham acts as a real person and passed all tests against spambots. Anti-Spam by CleanTalk.
Hi Jason, is that the correct path to the EDB file? Just check that it is valid and no typos, I notice in your error message it looks like you’ve got double-quotes at one end of the file path and a single quote at the other.
Hi Paul,
The Article is really great.
I have query. What if i have Mailbox Database of 200 GB and i need to restore a single mailbox..?
If i’ll do above procedure it would take so much time (don’t know the exact time.
can you pls tell is their any way to restore a single mailbox from the Exchange Backup which was taken using Windows Server Backup feature and able to restore a single mailbox using the windows server backup featur.
Regards,
Devang Patel
Also, a note to anyone who has left their .edb file in the default path, when you recover the database you should remove spaces when you’re navigating to the subfolder as their can not be spaces. Example.
D:RecoveryD_ProgramFilesMicrosoftExchangeServerV14MailboxMailboxDatabase0980111443
I renamed Program Files and Exchange Server, and Mailbox Database 0980111443 by just navigating and renaming the folders and removing spaces.
This took me much longer than it should’ve to figure out.
The Real Person!
Author Paul Cunningham acts as a real person and passed all tests against spambots. Anti-Spam by CleanTalk.
I generally try to avoid spaces in database paths because they make scripting and other shell operations a bit more complex, so it looks like you’ve found another example of that 🙂
Paul, thanks for the tutorial. I’m doing a restore of a users Tasks folder. I was able to get to the step to create the recovery database and mount it.
However,
I do not get any messages about it being a dirty shutdown state. And then Get-MailboxStatistics -Database RecoveryDB comes back with no results.
IT feels like I did not properly path something and the recovery database did not properly create a recovery database using the recovered .edb file.
The Real Person!
Author Paul Cunningham acts as a real person and passed all tests against spambots. Anti-Spam by CleanTalk.
Hi Tom, if mounted the DB and see nothing in it then its possible you have a path misconfigured and that it simply created a new, empty EDB file when you mounted it.
Double check your paths, that is definitely the first step.
So the command to create the Recovery DB should it translate to this:
New-MailboxDatabase RecoveryDB -Server EX2 -Recovery:$true -EdbFilePath ‘PATH TO Restored .EDB File’ -LogFolderPath ‘D:RecoveryE_LogsEX201-RecoveryDB’
Would it make my life easier to just move the recovered things to a shorter path in my recovery folder, because I do think that the full pathing is making my life more difficult.
Disregard Last Question, however I have a newer, better question.
I see all recovered folders, except it does not recover “Tasks” which is what I was trying to get this time. Is there a alternate way to recover the Tasks Folder that you’re aware of? Thanks for your help.
Ok, disregard that question too. I figured out that Calendars and Tasks both restore to the original location under a separate file called Tasks or Calendar….
So…that means that your tutorial was both accurate and correct on all counts. Thanks for posting the step by step so clearly, it is a tedious process.
The Real Person!
Author Paul Cunningham acts as a real person and passed all tests against spambots. Anti-Spam by CleanTalk.
Hi Tom, glad you got it sorted out, and yes I agree it is a bit tedious 🙂
If I wanted to restore only the calendar folder, is the syntax below correct
Restore-Mailbox -Identity “User” -RecoveryDatabase RecoveryDB -IncludeFolders Calendar
-RecoveryMailbox “User” -TargetFolder Restore
The Real Person!
Author Paul Cunningham acts as a real person and passed all tests against spambots. Anti-Spam by CleanTalk.
New-MailboxRestoreRequest is what you should be using today.
TechNet has the explanation of what -IncludeFolders does.
https://technet.microsoft.com/en-us/library/ff829875(v=exchg.141).aspx
Perfect tutorial.
thanks
Thanks, you are my king of this evening!
Hi,
instead of restoring the mailbox content to the actual mailbox to a subfolder, how is the procedure to open de mailbox restored just to look for a specific mail?
Thanks
The Real Person!
Author Paul Cunningham acts as a real person and passed all tests against spambots. Anti-Spam by CleanTalk.
Depends how much you know about the email you’re looking for. Restore-Mailbox can filter on keywords, sender addresses, recipient addresses, and so on.
http://technet.microsoft.com/en-us/library/bb125218.aspx
Hi Paul,
I am also looking at this and I have tried the filters (knowing exactly what I am after should be there) but I just get an empty folder restored.
Pete
Hi Paul,
I have been able to successfully restored the edb from backup and brought it into clean shutdown state. I created a recovery database and mounted it form the restored files. However I couldnt restore mails from mailbox in recovery database using filters of Restore-mailbox command like -subjectkeywords and -contentkeywords. I get an empty folder in the target mailbox. Please suggest how to make the filters work,
Gagan
Paul, thank you for this post!
I moved a user’s mailbox from Exchange 2003 to Exchange 2010, and while the move completed, a warning appeared that the 2003 source mailbox could not be deleted. When I deleted the source mailbox in Server Manager on the Exchange 2003 server, the 2010 mailbox was also deleted, and was unable to be reconnected in 2010. The 2003 mailbox still then reappeared but had nothing in it, even though it was previously deleted.
This post enabled me to recover the 2010 version of the mailbox.
Thank you again!
Houston.. we have a problem!!! fresh Exchange 2010 SP1 RollUp 4 upgrade from Exch2003 (2 HUB CAS – 2 MBX as a Dag Members) 2 dbs plus one public folder. Only 2 mailbox in DAG (the rest stills on Exch2003 Mailbox Databases)
Run WBBackup – runs ok
Run WB Restore – alternate Location – no log replay…
after that… my db is in inconsistent state (which is obvious) – after ESEUTIL /R no DB was touched (my EDB file has the same date – restore time – also process monitor never shows me a write to my edb file) … my db still in dirty shutdown…
Are you telling me that I need to waste my time (and my user’s time) to HARD REPAIR the db???
So… where is the … restore.env file?
My db is not mounted because is dirty shutdown… if i have to restore 100 gb??? do i need to wait 10 hours to repair my db??
I found my answer… the problem is when you specify the /D parameter YOU DON’T NEED TO SPECIFY the edb file, you just need to inform to the parameter the location of the EDB file – after a deeper research with process monitor you will see a file request path as a directory… so ESEUTIL never found an EDB file (the name is coded into logs so you need to worry about maintain the same file name of the mailbox database)
please change the following
[PS] D:>eseutil /r E00 /i /l D:RecoveryE_LogsEX201 /d ‘D:RecoveryD_DataEX201Mailbox Database EX2 01.edb’
to this
[PS] D:>eseutil /r E00 /i /l D:RecoveryE_LogsEX201 /s D:RecoveryE_LogsEX201 /d ‘D:RecoveryD_DataEX201’
I’ll echo what Rodrigo says above (when performing the Recovery step with eseutil) – I believe you only specify the database *folder* for the /d parameter, and not the whole folder/database name.
i.e. eseutil /r E00 /i /l D:RecoveryE_LogsEX201 /d D:RecoveryD_DataEX201
I don’t seem to get a ‘clean shutdown’ of the database without performing it in this syntax.
Same here. But nevertheless a very helpful article. I’m glad that I took the chance and tested it in the lab before I need it. A good adendum is this article:http://blogs.technet.com/b/mspfe/archive/2012/09/06/why-exchange-databases-might-remain-dirty-after-eseutil-r-recovery.aspx.
Thanks for the input.
Thanks for your quick feedback Paul, but is there any real need to back up the entire volume?
Thanks,
F.
PS: I couldn’t reply to your reply… 🙁
The Real Person!
Author Paul Cunningham acts as a real person and passed all tests against spambots. Anti-Spam by CleanTalk.
Flavio, if you’re using Windows Server Backup to backup Exchange 2010 mailbox databases there is no choice – you must backup the entire volume. Its just how it works.
Hy Paul.
It’s OK, I will manage to get enough space to back up the whole volume.
My troubles begin at the size of the backup: as I’m doing remote nightly backups (rsync via ssh tunnel), I don’t want to transfer *everything*. What do you think: would it be enough if I remotely transfer *only* the Exchange directories (mailboxes and logs)?
F.
The Real Person!
Author Paul Cunningham acts as a real person and passed all tests against spambots. Anti-Spam by CleanTalk.
Hi Flavio, at this point I’m a bit concerned you don’t understand some important concepts for Exchange backups, and that this is going to put your environment at risk.
Exchange databases need to be backed up by a proper Exchange-aware backup program. Windows Server Backup is one such program, and there are others such as Symantec Backup Exec as well.
You can read a little more about it here:
https://www.practical365.com/exchange-2010-faq-disk-filling-log-files
If you try to back up just the database and transaction logs using rsync or another file copy program, you’re not getting a proper backup of your Exchange database. It is highly likely such a backup will not be able to be used to recover your server from a disaster.
The reason I keep saying that with *Windows Server Backup* you need to back up the entire volume(s) that holds the Exchange databases and transaction logs is because that’s how it works. It isn’t optional, it isn’t a personal preference, it is how Windows Server Backup works when backing up Exchange.
Other backup programs that work with Exchange have a slightly different interface to achieve the same thing, but none of them work by just doing file system backups of the folders containing the database and logs.
Great review. Thanks. If you have more than one mailbox database is there a way to just restore the one DB that contains the mailbox I need to restore?
Thanks.
The Real Person!
Author Paul Cunningham acts as a real person and passed all tests against spambots. Anti-Spam by CleanTalk.
Hi Gabe, Windows Server Backup does its backup/restore at the volume level. So if you have multiple databases on a single volume you will need to restore all of those databases together. So obviously that also means that the alternate location you restore them to needs to have enough space to hold all the databases, not just the particular one you’re after.
First of all: MANY THANKS for this procedure, which is not to be found on Microsoft Sites 🙁
Secondly: the last step (logging in via OWA), how do I achieve it? Do I have to log in with the user of which I recovered the mailbox?
Thanks!
F.
The Real Person!
Author Paul Cunningham acts as a real person and passed all tests against spambots. Anti-Spam by CleanTalk.
Hi Flavio, log in to whichever mailbox you restored the items to. You can use OWA or Outlook, I just happened to use OWA in this demo.
Hello Paul and thanks for getting back to me.
It is working as I want it to, thanks.
Now one question: as I will never restore the application itself, but instead I’ll be eventually restoring single mailboxes (thus, restoring only the *data*), would it be sufficient to backup the folder containing EDB + LOG files?
Thanks again,
F.
The Real Person!
Author Paul Cunningham acts as a real person and passed all tests against spambots. Anti-Spam by CleanTalk.
Hi Flavio, you need to backup the entire volume(s) that the database and logs are on, not just the folders they are in. Thats just the way it works if you’re using Windows Server Backup.
See here:
https://www.practical365.com/exchange-2010-mailbox-database-backup-restore-windows-server-backup
“For an Exchange Server 2010 mailbox database backup we need to choose any volumes that have Exchange database or log files on them. The entire volume needs to be backed up, not just the folder holding those files.”
You just saved my life. Thank you.
Gracias por el tutorial/Thanks for your tutorial
Hi,
Great, thanks a lot for your Tutorial.
hosebei
i run this command:-
Restore-Mailbox -Identity “user1” -RecoveryDatabase RecoveryDB -RecoveryMailbox “user1” -TargetFolder Restore
but got following error message:-
the specified user couldn’t be found
Note:- I performed this on both disabled and removed mailbox
you put quotes around the mailbox name of user1 Quotes are only needed if the mailbox name has spaces in the name. The name user1 does not have any spaces, so quotes are not needed. Try taking the quotes away from the mailbox name user1
Pingback: Exchange Server 2010 Mailbox Server Backup and Recovery - Exchange Server Pro
Pingback: Como restaurar uma caixa postal do Exchange 2010 usando o Windows Server Backup « Rodrigo Rodrigues .:. www.andersonpatricio.org