Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Information

...

This article providers step by step instruction on how to restore individual mail items back to user mailbox mailboxes in Exchange 2013.

Similar articles are available for other versions of Exchange.

Info

Before restoring user mailboxes, verify if Exchange native tools can be used to restore the items.

When a user deletes items from the Deleted Items default folder by using the Delete, Shift+Delete, or Empty Deleted Items Folder actions, the items are moved to the Recoverable Items\Deletions folder. The duration that deleted items remain in this folder is based on the deleted item retention settings configured for the mailbox database or the mailbox.

By default, deleted items are kept for the period of 14 days, and deleted mailboxes for 30 days. Therefore, before proceeding with mailbox database restores, verify if items can be recovered by Exchange native tools.

Here is a list of Microsoft articles , that will help you restore items if they are not purged from your mailbox database.

Exchange 2007 :

How to search for deleted items in an Exchange mailbox

How can I recover items that I have "hard deleted" in Outlook?

Exchange 2010 / 2013

Scenario: a user deleted a folder in his mailbox

Let's use for our example following scenario: 

User Billy has accidentally deleted his IMPORTANT folder, and by the time he discovered that folder is missing, the item has had already been already purged from from the Recoverable Items storage container.  

Here is screenshot of his original folder:

Image Removed

In this scenario, we deleted "IMPORTANT" folder and purged "Deleted Items"

Image Added

Steps to recover

1. Determine which database hosts user mailbox

We need to find out which mailbox database hosts Billy's mailbox. If your environment uses a single mailbox for all users, skip this step.

Run the following command in the Exchange Management Shell (PoweshellPowershell)

 

...

iconfalse
Get-MailboxStatistics -identity billy | fl

 Image Added

Image Removed

 

2. Create "Recovery Database"

...

 using the Exchange Management Shell (Powershell)

In this step, we need to create recovery database, which serves a purpose of Create a Recovery Storage Group to use as temporary storage for our restored mailbox. (warning)  Make sure, that

Warning

The disk where you create

...

the Recovery Storage Group must have enough free space to accommodate the entire mailbox database.

...

For example, if your production database is

...

500GB, you

...

must have at least 500GB of free space to restore

...

the mailbox

...

database to the Recovery Storage Group.

Create folders where the recovery database will reside

...

. In our example, we will use "C:\EXCH-DATA\RDB1-DB\" and "C:\EXCH-DATA\RDB1-LOG".

Run the New-MailboxDatabase cmdlet with the following parameters:

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

 

...

The full command for our example is:

New-MailboxDatabase -Recovery -Name RDB1 -Server EXCH2010 -EdbFilePath "C:\EXCH-DATA\RDB1-DB\RDB1.EDB" -LogFolderPath "C:\EXCH-DATA\RDB1-LOG"

Image Removed

Image Added

After adding the recovery database, you must restart the Microsoft Exchange Information Store.

3. Use ZCB/ESB to restore the mailbox database to the Recovery Database

Lunch Launch ZCB/ESB, select , and visit the Restore page. Select the backup run containing your mailbox database, set appropriate options on Restore Tab. 

Image Removed

Image Removed

 

4. Mount Recovery Database

Exchange Management Console 

Image Removed

Powershell

Info

Mount-Database RDB1

Image Removed

. Restore to the Recovery Database and enter the appropriate information.

Image Added

Once restore begins, you will be taken to the Monitor page where you can track the progress of your restore.

Image Added

4. Mount the database via Powershell

Run this command. Be sure to use the name of your database. Our example database is RDB1.

Mount-Database RDB1

 

Image Added

5. Restoring Mailbox Items from a Recovery Database

Now, when recovery database is mounted we can now proceed Proceed with mailbox item restores .  You can use Get-MailboxStatistics once the mailbox database has been mounted.  UsePowershell to see the available mailboxes to restore with this command:

...

Get-MailboxStatistics -Database RDB1

Image Removed

 

Image Added

Restore Items into sub-folder of user Mailbox 

We will use RestoreNew-Mailbox cmdlet MailboxRestoreRequest cmdlet to restore entire folder Inbox into mailbox into Restore folder.

If you want to perform more granular restore, like specifying subject of the message for example, see more detailed information about Restore-Mailbox cmdlet - Exchange 2010 

Info

Restore-Mailbox -Identity "Billy Gates" -RecoveryDatabase RDB1 -RecoveryMailbox "Billy Gates" -TargetFolder Restore -IncludeFolders \Inbox

Image Removed

 

...

such as restoring messages with a specific subject, please refer to this article: New-MailboxRestoreRequest

New-MailboxRestoreRequest -SourceDatabase RDB1 -SourceStoreMailbox "Billy Gates" -TargetMailbox billy -TargetRootFolder Restore

Image Added

You can pipe 2 cmdlets below to get status of you restore request

Get-MailboxRestoreRequest | Get-MailboxRestoreRequestStatistics

Image Added

6. Verify restored items and move them to appropriate location

Use Outlook to view or move restored items to their Original Location. As you can see from the picture below, now we can move "IMPORTANT" folder back to its original location under Inbox. 

Image RemovedImage Added

...

Alternative restore

...

destinations

Outlook PST file

In some scenarios, you might want to get restored items in the form of PST file, rather then recover them directly to user mailbox. For example you need to retract recover emails of the an employee who is not longer with your organization. In such case, you would want to create  

Create a temporary user with exchange its own mailbox, recover email items to it, and then extract recovered content to PST file. Below is an example of how it can be achieved

...

Create temporary

...

User Mailbox

...

In our example, we call new the temporary user "Billy Recovery", with and give it the user name billyrec. You can choose any mailbox database (in case you have multiple)

Image Removed

B. Use procedures described in Steps 1 - 4 to have recovery database mounted

...

.

Image Added

 

Restore and mount a recovery database

Use steps 1 - 4 in the Steps to Recover section above to restore and mount a recovery database.

Recover mailbox items with Restore-Mailbox cmdlet 

In this example we use RestoreNew-MailboxMailboxRestoreRequest cmdlet to restore entire folder Inbox into Restore folder of the entire mailbox to our temporary user "Billy Recovery". For more detail about performing more granular restore follow this link: Restore-Mailbox cmdlet - Exchange 2010 

 

Info

Restore-Mailbox -Identity "Billy Recovery" -RecoveryDatabase RDB1 -RecoveryMailbox "Billy Gates" -TargetFolder Restore -IncludeFolders \Inbox

Image Removed

...

New-MailboxRestoreRequest

New-MailboxRestoreRequest -SourceDatabase RDB1 -SourceStoreMailbox "Billy Gates" -TargetMailbox billyrec@wqa5.local -AllowLegacyDNMismatch

Image Added

Extract the contents of the recovery mailbox to a PST folder 

Create a network share where you planning to place extracted PST file. Make sure that "Exchange Trusted Subsystem" group has full permissions on the share.  

Image Added

Image Removed

 

You might need to assign Mailbox Import Export role to Exchange administrator's account, unless it is done already. See more info here: Error message when you run the New-MailboxExportRequest cmdlet in Exchange Server 2010 SP1 or Exchange Server 2010 SP2: "Couldn't find the Enterprise Organization container" Therefore we run command below if that has not been done previously.   

If the Exchange administrator does not have the Mailbox Import Export role, run the below command, and log on/off to of the exchange server for so that the new role assignment to get applied to exchange administrator account. will be applied.

In this example, user is specified using domain name convention, where domain name is WQA1.local

...

New-ManagementRoleAssignment –Role “Mailbox Import Export” –User wqa1\Administrator

Image RemovedSee more info here: Error message when you run the New-MailboxExportRequest cmdlet in Exchange Server 2010 SP1 or Exchange Server 2010 SP2: "Couldn't find the Enterprise Organization container".

 

Image Added

 

Run New-MailboxExportRequest cmdlet. More information about this cmdlet can be found here http://technet.microsoft.com/en-us/library/ff607299(v=exchg.141).aspx

...

New-MailboxExportRequest -Mailbox billyrec -FilePath \\exch2010\Recovered.PST\Billy.Recovered.pst

Image Removed

If mailbox is large, Image Added

The export process can take some time . Hence, you if the database is large. You can check the progress of export task by piping to 2 two cmdlets: Get-MailboxExportRequest and the Get-MailboxExportRequestStatistics

...

Get-MailboxExportRequest | Get-MailboxExportRequestStatistics

Image RemovedImage Added

 

...

Verify recovered content.

Once you get PST file, you can open it in Outlook to verify recovered content

Image RemovedImage Added

...

Perform

...

Cleanup Operations

Once the mailboxes have been recovered, it is a good idea to clean up any unnecessary databases, user accounts, and files.

  • Dismount the recovery database and storage group. Delete files from database folders.
  • if If you used a temporary user for recovery, delete its mailbox and account in AD and Active Directory, along with any associated files, like PSTPSTs.