In Exchange Server 2010, Recovery Database (RDB) is introduced that has functionality similar to Recover Storage Group (RSG) in former versions. Moreover, the idea of including this feature is also the same: mounting a copy of database on RDB, extracting data from it, and then exporting it existing or new mailbox. Restoring an existing database to RDB is possible in two different ways:
The idea of RDB can prove helpful in following database recovery scenarios:
"Meanwhile, when this option is adopted, it has to be ensured that both Source and Target Server mailboxes lie in same Active Directory Forest."
Note: It has to be noted the Recovery Database (RDB) concept is used in ideal situations. For example: it is not meant for scenarios like entire Server restore or for restoring multiple databases or in cases when AD topology has to be rebuilt!
This segment focuses on illustrating the process to restore mailbox using recovery database Exchange 2010. Also, we will talk about alternative that could help in Exchange mailboxes recovery to another Server with original data and Server configuration absolutely intact.
To check the state of database recovered from backup, use /mh switch of ESEutil. For this, following command can be used: (here specify the path of EDB file that is being restored from backup)
For soft recovery of database to bring it to clean shutdown state, it is important that all log files are in healthy state. To check state of log files, use following ESEutil command: (In this example, the log file prefix is "E00")
Now for soft recovery (log file replay), follow the following syntax:
Again check state of database using ESEutil /mh command: (It should be clean shutdown now)
Note: If DB is still in dirty shutdown state, then try hard repair using ESEutil /p switch. Meanwhile, opting for this method can cause some data loss by removing corrupt pages from the EDB file (data loss will occur if leaf page from database is damaged). Syntax for repair using ESEutil is:
Recovery Database (RDB) can be created using New-MailboxDatabase cmdlet for Exchange Management Shell.
Now, the restored database from backup can be mounted on Recovery Database (RDB) using the Mount-Mailbox Cmdlet of EMS:
Now, it's the time to restore mailbox database from Recovery Database (RDB). To check out status of mailboxes on RDB, use the Get-MailboxStatistics command:
For restoring RDB mailboxes to target mailbox, it is important that GUID name of the mailboxes on source Server are known. To get the GUID name, use the following command:
The following command helps to restore mailboxes from RDB by using alias name of mailboxes on target Server and GUID name of source Server mailboxes:
Conclusion: The process to restore mailbox using recovery database Exchange 2010 proves helpful in number of situations but the condition is every step is followed and executed properly. An alternative to this lengthy database recovery process is Exchange Recovery Tool that allows retrieving data from public or private EDB folders and exports them to another Server. Added benefit of this solution is EDB recovery to PST, EML, and MSG file can be done.