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:

The mailbox user “Alex Heyne” is being used for this tutorial, and he has the following items in his inbox.

Exchange 2010 Mailbox User
Exchange 2010 Mailbox User

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.

Launch the Windows Server Backup Recovery Wizard
Launch the Windows Server Backup Recovery Wizard

Choose the location of the backup you wish to restore from, and click Next to continue.

Choose the Backup Location to Restore from
Choose the Backup Location to Restore from

Choose the backup date and time to restore from, and click Next to continue.

Choose the Backup Date and Time to Restore from
Choose the Backup Date and Time to Restore from

For Exchange Server 2010 mailbox database restores choose Applications as the Recovery Type.  Click Next to continue.

Choose the Recovery Type of Applications
Choose the Recovery Type of Applications

Choose Exchange as the application to recover, and check the box to not perform a roll forward of the database.  Click Next to continue.

Select Exchange as the application to recover
Select Exchange as the application to recover

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.

Select Recover to Another Location
Select Recover to Another Location

At the confirmation screen if you are happy with the selections you’ve made click on Recover to start the restore.

Click on Recover to start the restore
Click on Recover to start the restore

When the restore has completed successfully you can close the Recovery Wizard.

Close the Recovery Wizard when the restore is complete
Close the Recovery Wizard when the restore is complete

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.

Recovered data in Windows Explorer

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.

Restored Individual Mailbox in Exchange Server 2010
Restored Individual Mailbox in Exchange Server 2010

About the Author

Paul Cunningham

Paul is a former Microsoft MVP for Office Apps and Services. He works as a consultant, writer, and trainer specializing in Office 365 and Exchange Server. Paul no longer writes for Practical365.com.

Comments

  1. Gian

    Hi

    Very interesting post. Do e recover a single mailbox account on a different database?

  2. Aldo Ustariz

    Does this procedure affects in anyway the production database? I mean, is this procedure safe enough to run on production enviornment?

  3. Bob

    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.

    1. Avatar photo
      Paul Cunningham

      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.

      1. Bob

        Got it, thanks!

  4. Mario Reyes

    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.

    1. Avatar photo
      Paul Cunningham

      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.

      1. Mario Reyes

        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.

  5. Evaldas

    Saved my day. Thank you!

  6. RSL

    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,

    1. Avatar photo
      Paul Cunningham

      If you’re restoring all of the mailboxes then each one is a separate restore request. Basically treat them all as individual mailbox restores.

    2. RSL

      If I have more mailbox (100, 500,…), so it is very hard for restoring mailbox.

      1. Avatar photo
        Paul Cunningham

        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.

  7. problo

    Awesome Tutorial, Fully saved the day.
    Thanks heaps!

  8. josue paulino

    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

    1. Avatar photo
      Paul Cunningham

      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.

  9. Vijilesh C.M

    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

  10. Michael Bentfeld

    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?

  11. Michael Bentfeld

    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

  12. saj

    disregard above ^

  13. saj

    how do I restore a mailbox to another database? or merge/import the restore mailbox to another mailbox on another database

  14. Adam Lacey

    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

    1. Adam Lacey

      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

    2. Avatar photo
      Paul Cunningham

      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.

  15. Rene

    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

  16. Seraj

    Hi Paul,
    Thanks for the beautiful explanation. Article Worked for me………….Many thanks

  17. Michael Potter

    So, once you are done with the Recovery Database, what are the steps for removing it?

  18. CJ

    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?

  19. Gary

    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!

    1. Rob

      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”

  20. Ian

    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

  21. Adib

    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?

  22. Kelley Underwood

    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?

  23. ShaneW

    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

  24. DaveHux

    You just saved my life 🙂

    Worked perfectly. Thanks very much

  25. Dinesh

    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?

  26. Jim Robert

    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

  27. Zohaib

    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.

  28. JohnK

    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.

  29. Jim Morton

    Incredibly helpful article! Very clear and concise. Thank you!

  30. Mike

    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.

  31. Deanne

    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”.

  32. Ricky

    Hi Paul,

    May I un-mount the recoveryDB after restored individual mailbox ?

    Many thanks.

    1. Avatar photo
      Paul Cunningham

      Yes you can unmount it and/or remove it once you have finished with your restores.

      1. Deanne

        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?

        1. Avatar photo
          Paul Cunningham

          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?

  33. Alan Temperly

    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?

    1. Avatar photo
      Paul Cunningham

      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.

  34. Baz

    PS, Paul any cleanup recomended after restore?

    1. Avatar photo
      Paul Cunningham

      Sure. If you’re finished restoring you can remove the recovery database and then remove the files from the file system.

      1. Baz

        Thanx mate, excellent guide may god bless you with 19 virgins, 28 camels and 7 goats

  35. Baz

    Thanx heaps mate works great, you are a legend, love from land down under

  36. Anthony Maw

    does anybody know if this method can be modified to recover a Public Folder database ?

  37. Eh Nois

    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) ??

  38. Christopher

    Flavio,

    Thumbs up dude!!! thumbs up

  39. GV

    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

  40. Hemant

    You may check application event 1006 for successfully mailbox restoration.

  41. Danny

    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?

  42. Ketan

    Thank you very much for the Info. worked for me like piece of cake.
    Keep up the Good work.

  43. Arras

    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.

  44. jerry

    Thank you time saver.
    Make sure email account exists in Exchange (in case it was deleted) before last step.

  45. Maksim

    Great! Thanks you! i used it with success

  46. William

    Nevermind, found out how to.

  47. William

    Is there a way to specify the BadLimit parameter during the restore-mailbox operation?

  48. Jagannath Patro

    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

  49. Mark Hostettler

    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.

  50. Scott Brozinick

    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

  51. Andrew Muller

    This is a ridiculously complex procedure for such an everyday kind of task.

    Progressing slowly and learning to despise Microsoft more by the hour.

    1. Avatar photo
      Paul Cunningham

      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.

      1. Jagannath Patro

        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

  52. Stephen

    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

  53. William

    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.

  54. Hamed

    Paul does the recovered mailbox includes calendar information also?

  55. Vidz Desai

    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.

  56. Mykul

    Great article Paul.

    What is the proper way of removing the recovery database once the restore has been completed?

  57. nida

    Single mail item.

    The command seems success full but it does not restore the email. Not sure why?

    1. nada

      Same here – the filtering of specifics to only grab one or a few emails runs fine, but not a thing is actually restored.
      Boo!

  58. Josh

    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!

  59. Abhay

    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

  60. Rajesh

    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

  61. Ole

    Thanks a lot for this tutorial!

  62. Fernando

    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!

    1. nada

      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).

  63. Paulo Coluna

    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

  64. Julyeth

    Hi, yes, I haven´t restoration logs, I can continue with the following steps?

  65. Sinuhe69

    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!

  66. Saran

    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 🙂

  67. Roddy

    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

  68. Ashish Masih

    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

    1. Avatar photo
      Paul Cunningham

      You can restore databases from different servers as long as both servers are in the same Exchange organization.

  69. Nagaraj

    Awesome tutorials:)
    Thanks a lot:)

  70. Amit

    Hi Paul,

    Got solution. Need to select volume that Exchange DB & logs hosted. It is working.. Application option is visible for recover.

    Thanks,
    Amit

  71. 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

  72. Phil Ready

    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

  73. Patrick

    Worked for me… MANY THANX!

    Patrick

  74. Fred

    Great and clear article !!!!!!!!!!!

    Thank You

    Bravo PAUL
    Merci

  75. Brian

    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

  76. JoeC

    Ok, I pulled what I need out of the mailbox. How do I safely unmount and remove RecoveryDB?

  77. Peter

    Thanks, thanks, thanks Paul!
    It works like a charm.

  78. Geoff

    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

  79. Asim

    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.

  80. hassan

    i cannot make restore from recovery database and it says that mail box doesn’t exist please can you give me hint?

  81. Joe Shepherd

    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

      1. Joe Shepherd

        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

  82. Carol Ostos

    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!!!!

    1. Carol Ostos

      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!!!!!!!!!

  83. collcomp

    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 …

  84. Mostafa

    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

    1. Jaime

      Did you ever find a fix for this one mailbox, we are having the same issue on just one mailbox.

      Thanks,
      Jaime

  85. Mostafa

    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.

  86. Mostafa

    Thank you for your response. My EDB is on clean shutdown state

    1. Avatar photo
      Paul Cunningham

      Do the file paths for the Recovery Database exactly match the location and name of the EDB file itself?

  87. Mostafa

    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

  88. Darrell

    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!!!

  89. Tom Rimala

    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%.

    1. Fred

      I want to restore a email from an archive. How do you get Exchange to recognize an archive file from the vault?

      1. Fred

        No, vault as in off site storage. Data is gone from server but is on a backup tape in storage.

      2. Fred

        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?

      3. Avatar photo
        Paul Cunningham

        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.

      4. Fred

        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?

  90. C Blue

    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

  91. Devang Patel

    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

  92. Tom

    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.

    1. Devang Patel

      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

  93. Jason Taylor

    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.

    1. Avatar photo
      Paul Cunningham

      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.

  94. Devang Patel

    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

  95. Tom

    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.

    1. Avatar photo
      Paul Cunningham

      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 🙂

  96. Tom

    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.

    1. Avatar photo
      Paul Cunningham

      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.

      1. Tom

        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.

      2. Tom

        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.

      3. Tom

        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.

      4. Avatar photo
        Paul Cunningham

        Hi Tom, glad you got it sorted out, and yes I agree it is a bit tedious 🙂

        1. John

          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

  97. vision

    Perfect tutorial.

    thanks

  98. Cristian Ruiz

    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

      1. Peter Welch

        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

        1. Gagan

          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

  99. Lars Rasmussen

    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!

  100. Rodrigo

    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??

    1. Rodrigo

      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’

      1. Mike

        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.

  101. Flavio Boniforti

    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… 🙁

    1. Avatar photo
      Paul Cunningham

      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.

      1. Flavio Boniforti

        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.

      2. Avatar photo
        Paul Cunningham

        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.

  102. Gabe

    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.

    1. Avatar photo
      Paul Cunningham

      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.

  103. Flavio Boniforti

    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.

    1. Avatar photo
      Paul Cunningham

      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.

      1. Flavio Boniforti

        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.

      2. Avatar photo
        Paul Cunningham

        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.”

  104. Jason

    You just saved my life. Thank you.

  105. Gabo

    Gracias por el tutorial/Thanks for your tutorial

  106. hosebei

    Hi,

    Great, thanks a lot for your Tutorial.

    hosebei

  107. Ranjna

    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

    1. Nick

      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

Leave a Reply