Exchange 2010 database recovery
This article outline’s the steps to restore an exchange database in Exchange 2010, christened Recovery Database for DAG.
1. Create 2 folders:
- Database –> D:\Recovery\Database
- Transaction Logs –> D:\Recovery\Logs
2. Now restore the database which is to be recovered and the subsequent logs exactly to the above location
3. Now follow steps 1-7 mentioned in the article and make the database in a clean shutdown :
Exchange Database Recovery – Using eseutil commands: https://msexchangeguru.com/2009/07/12/exchange-database-recovery-using-eseutil-commands
4. Once the database is in clean shutdown state, rename the original database file to “RecoverDB.edb”.
NOTE: Don’t copy the logs since ESEUTIL /R replayed them into the EDB and the database does not require any more logs to make it clean shutdown.
5. Use the Exchange management Shell to create a recovery database.
This example creates the Recovery Store “RecoverDB” on the server MSXGuru-Exch using the defined path for the database file and transaction logs folder.
New-MailboxDatabase -Recovery -Name RecoverDB -Server MSXGuru-Exch -EDBFilePath D:\Recovery\Database\RecoverDB.edb -LogFolderPath D:\Recovery\Logs
Important: If you have EMC Console open, you will need to restart it to see the newly created Recovery mailbox Store “RecoverDB“ under the Organization Configuration–> Mailbox –>Database Management and its state will be dismounted.
6. Now Right click on the newly created recovery Store and mount it.
7. Now open Shell and type the command as shown:
Get-MailboxStatistics -Database RecoverDB
This will show the list of mailboxes in that database.
8. This is the cmdlet to recover entire mailbox content for the mailbox UserA
Restore-Mailbox -Identity UserA -RecoveryDatabase RecoverDB
This will take time depending on the size of the mailbox.
9. This is the cmdlet to restore UserB mailbox content into UserA mailbox under the RecoverTest folder.
Restore-Mailbox –Identity UserA –RecoveryDatabase RecoverDB –RecoveryMailbox UserB –TargetFolder RecoverTest
10. This is the cmdlet to restore all mailboxes in the database mbx1 which are also present in the RecoverDB database. For every mailbox it will ask you to confirm the action, we do have an option “Yes to All”
Get-Mailbox –Database mbx1 | Restore-Mailbox –RecoveryDatabase RecoverDB
More to come on this!!!
Ratish
January 11th, 2011 at 2:40 am
Hi,
I am facing an interesting problem of identity of recovery mail box.
Get-MailboxStatistics -Database RDB1
Shalil Kumar Gupta 3362 BelowLimit 12/17/2010 10:02:41 AM
Restore-Mailbox “shalil Kumar Gupta” -RecoveryDatabase RDB1
The specified user “shalil Kumar Gupta” couldn’t be found.
+ CategoryInfo : NotSpecified: (0:Int32) [Restore-Mailbox], ManagementObjectNotFoundException
+ FullyQualifiedErrorId : 84122923,Microsoft.Exchange.Management.RecipientTasks.RestoreMailbox
I have tried with userId, GUID of mailbox but failed.
Any idea how to recover this mailbox or what identity should i provide for this mail Box.
February 21st, 2011 at 10:00 pm
This is a very good guide.
May 5th, 2011 at 12:43 pm
I need to make a recovery database. The information I find out there is not comprehensive I like the way you guys explain stuff do you have an article like this on the creation of a recovery database?
May 14th, 2011 at 5:23 am
Ashish,
You need to run command properly. Try using display name.
October 17th, 2011 at 11:33 am
You can find the display name by using the command: get-mailboxstatistics -database RDB1.
October 24th, 2011 at 8:53 am
Hello,
I created the RecoverDB. When i run the command
Get-MailboxStatistics -Database RecoverDB nothing happens.
why?
November 1st, 2011 at 9:34 am
[…] https://msexchangeguru.com/2010/05/23/exchange2010-recovery-database/ Posted in: Exchange […]
December 1st, 2011 at 4:53 am
i can’t understand the last command to restore all mailboxes in the database mbx1 to the RecoverDB , i thought it should be reversed
January 8th, 2012 at 8:05 am
Thanks a lot. This was helpful.
January 18th, 2012 at 7:11 am
hello,
i have the problem when mount the recovery db
the original edb file is State: Clean Shutdown
after rename edb file and create newdb is ok
RecoveryDB TESTEXC01 True None
but when i try to mount i have this error:
RecoveryDB
Failed
Error:
Couldn’t mount the database that you specified. Specified database: RecoveryDB; Error code: An Active Manager operation failed. Error: The database action failed. Error: Operation failed with message: MapiExceptionCallFailed: Unable to mount database. (hr=0x80004005, ec=1276)
[Database: RecoveryDB, Server: TESTEXC01.test.local].
An Active Manager operation failed. Error: The database action failed. Error: Operation failed with message: MapiExceptionCallFailed: Unable to mount database. (hr=0x80004005, ec=1276)
[Database: RecoveryDB, Server: TESTEXC01.test.local]
An Active Manager operation failed. Error: Operation failed with message: MapiExceptionCallFailed: Unable to mount database. (hr=0x80004005, ec=1276)
[Server: TESTEXC01.test.local]
MapiExceptionCallFailed: Unable to mount database. (hr=0x80004005, ec=1276)
the production ad domain that i want to recovery is different that domain of the server recovery(test.local) , This could be the problem ?
thanks
January 25th, 2012 at 8:02 am
This was helpful.
keep it up.
Thank iu.
January 30th, 2012 at 1:12 pm
Wael, its not recovering from mbx1 to recoverdb. It is pulling a list of users in mbx1 and then piping that into the recover command. That command will recover the data for any user who has an active mailbox in mbx1.
February 15th, 2012 at 2:18 pm
Fabio, before you mount the recovery DB, you have to go into the properties and check the box that says it can be overwritten by a restore. Also, make sure the logs folder that was created for that DB is empty.
Now, my problem is this:
A user was somehow accidentally deleted from AD. His account was recreated. I restored the MDB from backup and have done all the proper steps to mount the RDB. However, when I run Restore-Mailbox -Identity “username” -RecoveryDatabase RDB
I get the following error:
Database “RDB” is not a recovery database.
If the New-MailboxExportRequest would WORK on my server, I would probably be OK. But I’ve followed the step to give those permissions to the admin user and the command fails.
March 14th, 2012 at 5:03 pm
Fabio,
You can mount a database in a different server, but both servers have to be in organizations of the same name. I suspect since you indicated they are in differnt domains, the Exchange organizations are different. That won’t work.
November 29th, 2012 at 4:15 am
Nice post.
February 8th, 2013 at 4:54 am
Thanks for sharing post to recover exchange mailboxes, above tips are more helpful to recover mailbox using the shell command.
February 8th, 2013 at 7:15 pm
Thanks for updating…
February 16th, 2014 at 2:50 am
Hi All, I think if the exchange org is different then you can restore the edb and log files of the db and then create a new database thru shell and then provide the edb and log folder path with selecting overwrite the database option. Then can run the new-mailboxexportrequest.
June 19th, 2014 at 9:59 am
How do you use the Recovery Database to restore the entire mailbox database .edb ?
June 21st, 2014 at 2:05 am
Hi Rob,
Have a look on the search results. There are many blogs.
https://msexchangeguru.com/?s=restore
October 14th, 2014 at 8:51 am
hi.i have an issue with database on exchange what we did we assign a partation on server for data base and later got san for storage but.now due to overload of log files outlook is not opening for users because of this i am taking backup of logfiles and storing it into SAN can any one help me in this issue
October 18th, 2014 at 2:42 pm
I would recommend to use Disaster Recovery services of GoldenFive.net. If you need their email id is architects@goldenfive.net