Introduction to Exchange 2013 Recovery Database Feature

CREATED by , Date: Wednesday, March 22, 2014 | Download Complete PDF:

Exchange Server 2003 and 2007 users must be familiar with Recovery Storage Group (RSG). Yes, that allowed backing up a mailbox on different store and then mounting it to healthy Server. However, the concept is quite similar in Exchange 2010 and 2013, the difference is in the name which is now Recovery Database (RDB).

Overview

Recovery Database in Exchange Server 2013 is a unique mailbox store that has restored backup of a normal mailbox mounted on it (RDB is not visible at user's end). If there is a normal mailbox DB named MDB01 at original location, a recovery mailbox MDB01 will exist.

What is the Difference between Normal Mailbox Database and Recovery Database?

  • It is created using Exchange Management Shell.
  • Send/Receive service is blocked for RDB.
  • No provision to add any information to it.
  • Send/Receive service is blocked for RDB.
  • It is invisible to end user (no client access)
  • No System settings or mailbox policies exist.
  • Online maintenance and backups are not performed.
  • It cannot be used for public folder recovery.
  • RDBs' are not connected with original mailboxes.

Restore Data Using Recovery Database Exchange 2013

Step 1 : Restore DB Using Windows Server Backup:

Use appropriate solution to restore backup of the mailbox from failed Server. Here, I am exemplifying restoration process using Windows Server Backup.

a ) Open Windows Server Backup and click on Recovery option to initiate the restore process.


b ) Now select the location where backup is stored. In this case, the backup is stored on same Server as the database.


c ) Choose the time and date of the backup that has to be restored.


d ) Select the option Files and Folders so that defined database and log files are restored.


e ) Now, choose the database and log files to be restored (In this example, database DB02 is being restored). Meanwhile, take care of the fact that if .log and .edb files are saved at locations where they cannot be selected simultaneously, restoration of both the files will be two separate processes.


f ) Choose the location where restored data has to be saved. Make it a point to save it at a location that has sufficient space to hold the data. Select the option Another Location instead of Original Location.


g ) Confirm the provided credentials and click on Recover button to start the restore process.



Step 2 ) Bring Restored Data to Clean Shutdown State:

Now, the EDB and LOG files are being restored from the recent backup but Database Recovery has not been created yet. If an RDB is created now and the restored database is being tried to mount on it, the process will fail. This is because the DB is in dirty shutdown state.


Test the state of database using /mh switch of Eseutil utility (Since the database has been restored to an alternate location, it will be in dirty shutdown state). The syntax is: Eseutil /mh "Path of the database"


Now perform soft recovery of database that will require ESEUTIL, log file prefix (from which the transaction logs has to be replayed) and the path of database.



After this, again test the state of database using /mh switch.


Note: If soft recovery does not work to bring DB into consistent state, then use hard recovery technique (although this has risk of data loss). The syntax is: ESEUTIL /P database_filename.edb



Step 3 ) Create a Recovery Database:

For this, use New-MailboxDatabase command in EMC.


Now mount RDB to Server:


Step 4 ) Extract Data from Recovery Database:

The data extracted from recovery database can be merged to required mailbox (Advantage of using RDB is data can be recovered from backup without any disturbance to original database and messaging service).

The mailboxes in RDB can be viewed using Get-MailboxRestoreRequest command in EMC.


For restoring RDB, the GUID name of mailboxes on source Server should be known. For this, run the following command:


To restore RDB mailboxes using GUID name of source mailboxes and alias name of mailboxes on target Server, run the command: