I needed to do a bunch of restores of the entire mailbox of six employees from a 60-day period because a client of mine did not have an archiving solution in place. The six users were spread over 3 databases. All of these mailboxes had to be restored to a different location because of audit purposes. The Backup to Disk capacity was 5 days so that was out of the question.
The environment was Exchange 2010 SP3 on Windows 2008 R2 servers with a 3-member DAG across a production site and a disaster recovery site.
Environment:
Windows 2008 R2 SP1
Exchange 2010 SP3
3-Member DAG – 2 Active (HQ), 1 Passive (DR)
3 databases spread across two mailbox servers in HQ
Symantec Netbackup 7.1
Create Recovery Database in Exchange
1. Create Recovery Database:
New-MailboxDatabase -Recovery -Name <name> -Server <servername> -EdbFilePath "C:\Program Files\Microsoft\Exchange Server\V14\Mailbox\<filename>.edb" -LogFolderPath "C:\Program Files\Microsoft\Exchange Server\V14\Mailbox\Logs"
Dismount the database you just created.
I created multiple recovery databases so speed up the process, one for each of the three databases with users to be recovered. You can also mount multiple recovery databases at a time only if the databases were originally homed on the same server in the DAG.
Restore to Recovery Database
1. Launch Symantec's Backup, Archive and Restore.
2. Select the backup you want to restore.
3. Select the Database and Logs and Select Actions, Restore from the Main Menu
4. From the General tab, Restore to a different location - change database at the end of path to the name of the recovery database in Step 1 (Microsoft Exchange Database Availability Groups:\HQDAG1.ECFMG.ORG.ECFMG.ORG\Microsoft Information Store\RecoveryDB\) and Click Start Restore
5. After a successful restore run the following command to restore the specific mailbox to a folder in the existing mailbox on the server, specifying the name of the folder you want the mail restored or PSTs imported. Run the following command:
New-MailboxRestoreRequest -SourceDatabase RDB01 -SourceStoreMailbox '<Use Display Name>' -TargetMailbox INFO -TargetRootFolder <target folder in client> -AllowLegacyDNMismatch
Keep in mind that Exchange assigns a unique name after initiating a mailbox restore request. MailboxRestore<0-9>. See Mailboxrestore3 in graphic below.
After the tenth restore request, you will get the following error message:
The name must be unique per mailbox. There isn't a default name available for a new request owned by mailbox <OU Path/Username>. Please clean up existing requests by using the Remove cmdlet or specify a unique name.
+ CategoryInfo : InvalidArgument: (MSArchive:MailboxOrMailUserIdParameter) [New-MailboxRestoreRequest], NoAvailableDefaultNamePermanentException+ FullyQualifiedErrorId : 2AF54CC3,Microsoft.Exchange.Management.RecipientTasks.NewMailboxRestoreRequest
In order to move ahead with additional restores, run the following command and enter “A” to clear up completed restore requests.
Get-MailboxrestoreRequest -Status Completed | Remove-MailboxrestoreRequest
Confirm
Are you sure you want to perform this action?
Removing completed request 'ECFMG.ORG/EICS/Users/Archive, MS\MailboxRestore'.
[Y] Yes [A] Yes to All [N] No [L] No to All [?] Help (default is "Y"): a
To avoid getting this error
The user can then view the restored data in the target folder in the Outlook client.
This procedure had to be repeated for 6 users over a 60-day period.
I definitely think it is high time to put an archiving solution in place.
No comments:
Post a Comment