When an Exchange Server 2016 database has failed you may need to restore it from backup. As an example of this let’s look at a scenario where the volume on the server that hosts the database file has been lost due to a hardware failure. The server has been running backups using Windows Server Backup, so we’ll restore the lost database from the last successful backup.
In this situation we need to consider what will happen to any new or changed items in mailboxes that has been created or changed since the last backup ran. Obviously the backup itself will not contain those recent changes, however the transaction logs for the database that are stored on a separate volume are still intact. So in this case the logs can be used to roll forward the restored database up to the point in time at which the failure occurred, which should mean no data loss. However if the transaction logs were not available, for example if they were on the same volume as the database when it was lost, or because circular logging was enabled, then we would only be able to recover to the point in time at which the backup ran. That would mean accepting some data loss.
My Exchange 2016 backups have been running thanks to a scheduled job in Windows Server Backup. The last backup was successful, so that will be the one used for this recovery.
Because I don’t trust backup software to tell me the truth I also check the backup time stamp on the database itself.
[PS] C:\>Get-MailboxDatabase -Server EX2016SRV1 -Status | fl Name,LastFullBackup Name : DB05 LastFullBackup : 11/2/2015 2:59:37 PM
And just to reinforce the point, we can see that the mailbox for Alannah Shaw (which is hosted on the database that will be restored) had 2963 unread items and at least one new item that arrived after the backup completed. So if the restore process that includes the roll forward of transaction log files is successful, the mailbox should look the same after the restore as it did before the failure occurred.
Restoring an Exchange Server 2016 Database Using Windows Server Backup
So we’ve seen above that the backups have been running, and that new items had arrived in user mailboxes since the last backup was taken. The storage failure on the server has occurred, and we can see that the database is in a dismounted state because the database file is missing.
[PS] C:\>Get-MailboxDatabase DB05 -Status | select mounted Mounted : False
The failed storage volume has been replaced, formatted and mounted in the same path as it was before. We can now begin the restore.
In Windows Server Backup select Recover from the Actions pane.
Select the source of the backup that will be used for recovery. In this example the backup is stored on a volume attached to the server.
Select the backup that you want to restore from.
Choose Applications as the recovery type.
Select the Exchange application. Note also that there is an option for controlling the roll-forward behaviour. In this example scenario we do want to roll forward the transaction logs and bring the database completely up to date, but if your recovery scenario involves recovering to a specific point in time, or if you have further restores to perform (such as incremental or differential backup sets) then you can check this box to prevent the roll-forward from occurring.
Because we are recovering a completely failed database we want to simply restore to the original location.
The final step is to confirm the previous selections before beginning the recovery operation.
Click Recover to begin the restore. Monitor the restore operation until it completes. If the restore is successful the database should be mounted automatically for you.
[PS] C:\>Get-MailboxDatabase DB05 -Status | select mounted Mounted : True
The mailbox for Alannah Shaw also shows the correct number of unread items, as well as the newer item that was received after the backup had occurred, thanks to the roll-forward operation that the recovery process included.
As you can see a database restore for Exchange Server 2016 is a simple operation when Windows Server Backup is used for backups. Windows Server Backup is supported for production use, and is ideal for test labs where you just want to practice various recovery scenarios. If you use a different backup product to protect your Exchange server then the process will vary, and you should consult the documentation provided by your backup vendor.