Exchange 2007 restore using NTBackup
Now that I’m well under way with my Exchange 2007 migration I figured it’d be a good time to test the new Exchange recovery process.
To cut a long story short, it’s a long process as most of the functionality is via Powershell rather than the Exchange Management Console.
Anyway, here’s a quick guide.
1. Create the recovery storage group
This just creates an empty storage group for the recovery database, nothing fancy going on here.
[PS] C:\>new-storagegroup -LogFolderPath F:\Backup\Restore\Logs -Name ExchangeRestore -SystemFolderPath F:\Backup\Restore\Data -Recovery Name Server Replicated Recovery ---- ------ ---------- -------- ExchangeRestore IMM-CORE-EXCH01 None True [PS] C:\>
2. Create a new recovery mailbox database
This creates a new empty database for NTBackup to restore to.
[PS] C:\>new-mailboxdatabase -mailboxdatabasetorecover "Mailbox Database" -storagegroup ExchangeRestore -edbfilepath "F:\Backup\Restore\Data\Mailbox Database.edb" Name Server StorageGroup Recovery ---- ------ ------------ -------- Mailbox Database IMM-CORE-EXCH01 ExchangeRestore True [PS] C:\>
3. Restore the mailbox database via NTBackup
Now restore the mailbox database via ntbackup, remembering to tick the “this is the last backup to restore” option. Tick the check box not to mount the store after the restore completes.
4. Mount the restored mailbox database
[PS] C:\>Mount-Database -Identity 'ExchangeRestore\Mailbox Database' [PS] C:\>
5. Restore the mailbox to a folder in another mailbox
I prefer to redirect the mailbox restore elsewhere, just so that I can look through it and decide what I want to do with the restored data. Below I’m restoring my mailbox to an existing mailbox called ‘Restore’.
[PS] C:\>Restore-Mailbox -RSGMailbox 'Dave Hope' -RSGDatabase 'ExchangeRestore\Mailbox Database' -id 'Restore' -TargetFolder 'Restore' [PS] C:\>
6. Dismount the recovered mailbox database
We should now be done with our recovered mailbox database, so we can dismount it ready for removal.
[PS] C:\>Dismount-database -Identity 'ExchangeRestore\Mailbox Database' [PS] C:\>
7. Remove the mailbox database
This removes the mailbox database from the storage group – it doesn’t actually delete the files.
[PS] C:\>Remove-MailboxDatabase -Identity 'ExchangeRestore\Mailbox Database' [PS] C:\>
8. Remove the storage group
Since we shouldn’t need out recovery storage group (at least, until next time) we can remove that too.
[PS] C:\>Remove-StorageGroup -Identity 'ExchangeRestore' [PS] C:\>
There, all done! Good luck with your Exchange restore.
Thanks…This saved my a$$ today!
Another note, if the database was not in clean shutdown mode when backed up or not restored properly, you may have issues mounting it.
eseutil /r /L
(no space after /L) will check it and you should be good to mount. i only had to do this once and it was aobut a year a go. this was a nice reminder. here is the link to eseutil switches, there are some others incase your db needs more than the “soft” restore
http://technet.microsoft.com/en-us/library/aa998249.aspx
ok, so that didnt show up right, eseutil /r (Enn) /L(path to log files)
i was using the arrow brackets before
Thanks for the additional information Chris, hope your restore went well!
Not much out there on this, so great to stumble on this…but I get lost half way through. I can create the Storage Group and Mail store just fine…but for some reason they are not displayed in my console. My restore works fine, but I have no way to get to the data after it is restored to the new store. How do I navigate and mount these mailboxes to select what date to restore to the mailbox? I am kinda a newbee here, but I would appreciate it. Also really odd – the Restore-Mailbox tells me the mailbox store does not exist…double and tripple checked…everything is correct. PLease advise.
Hi Dave,
Did you follow step 4 and mount the database?
Step 3 is very broad, but seems like the most important one to me. I do not see any option in NTBackup to redirect the restore to another storage group. It asks me if I want to restore to a different server, but not a different storage group. Am I missing something obvious? I get:
You have selected to restore backups from a database store. This backup data may be restored to the original server, or redirected to another database server.
Backup From: SERVER\Microsoft Information Store\First Storage Group
Restore To: SERVER
Temporary location for log and patch files:
__ Last Restore Set (log file replay will start after this restore completes.)
(grayed-out checkbox) Mount database after restore
Hi LH,
When you do the restore it should go into the RSG you create in Steps 1 + 2 automatically.
Worst case scenario the restore will fail, since your other stores wont have the “This database can be overwritten by a restore” option.
Thanks
Dave
Thanks for the clarification, Dave.
Going from Exchange 5.5 to 2007 definitely puts me out of my element. I think that type of transition will be more and more common with Office 2007 not supporting groupware functionality from Exchange 5.5.
No problem, If you have any questions or if anything crops up during your migration I’m happy to help.
Hi ,
After Mount -database Command Following Error Occurred :
[PS] C:\>Mount-Database -Identity ‘Third Storage Group\TempWorkers’
Mount-Database : Exchange is unable to mount the database that you specified.
pecified database: Third Storage Group\TempWorkers; Error code: MapiExceptionC
llFailed: Unable to mount database. (hr=0x80004005, ec=-550)
.
At line:1 char:15
+ Mount-Database <<<< -Identity 'Third Storage Group\TempWorkers'
PLs. Reply
Hi Daya,
Have you checked the permissions for the folder in which the database + logs reside?
Is anything logged in the Application or System logs?
Yes , all permissions are OK
1) i have AD 2003 and MS Exch 2007 on windows 2003
2) i am using NT backup for edb files , system state , intpub , and E:/Excahnge folder G:/Log files ( for every storage Group )
Now i am trying to restore my Third storage Group in my Test Envelopment Exch.2007 server ( which is same Exch.Server like in our production Envelopment ) .
But it’s giving above Error
any thing i am missing form my backup Procedure ?
Event Type: Error
Event Source: MSExchangeIS
Event Category: General
Event ID: 1088
Date: 4/28/2010
Time: 4:20:22 PM
User: N/A
Computer: IDBIFORTEX01
Description:
The information store could not be loaded because the distinguished name (DN) /O=IDBIFORTIS/OU=EXCHANGE ADMINISTRATIVE GROUP (FYDIBOHF23SPDLT)/CN=RECIPIENTS/CN= of message database “Recovery Storage Group\TempWorkers” does not match the DN of directory /O=IDBIFORTEX01/OU=EXCHANGE ADMINISTRATIVE GROUP (FYDIBOHF23SPDLT)/CN=RECIPIENTS/CN=.
The database may have been restored to a computer that is in an organization or site different than the original database.
I’d recheck permissions – we had similar probs and it was permissions based in the end.Data Recovery Bristol
Hello
In the step 4, when i’m mount the database.
Error encountered while trying to mount the database (Mailbox Database) in the recovery storage group (Recovery Storage Group). Error message is: Exchange is unable to mount the database that you specified. Specified database: STMAIL01\Recovery Storage Group\Mailbox Database; Error code: MapiExceptionCallFailed: Unable to mount database. (hr=0x80004005, ec=1276)