Exchange
How to Restore Exchange Mailbox Database to a New Server
Summary:
This guide helps you migrate and restore your Exchange database from
old server to new. In this guide, we have discussed a few manual and an
advance method that you can use to restore your Exchange databases to a
new Exchange server without data loss or database corruption.
At some point in time, you are required
to replace or upgrade your IT equipment. With time, either the hardware
becomes slow or doesn’t meet your current requirements. Sometimes, you
need to upgrade on the software part for better features and security,
which may require new better hardware.
So if you have setup an Exchange server
on a new server or thinking of upgrading your Exchange sever, you will
need to restore and mount the Exchange database to new server.
By following this guide, you can easily
migrate and restore your Exchange databases to new server with minimal
downtime. It will also help you restore a corrupt or
inaccessible/dismounted Exchange mailbox database to a new server.
But before we look at how to restore
Exchange mailbox database to a new Exchange Server, let us first have a
brief overview of Exchange downtime scenario.
About Exchange Downtime While Database Restore to New Server
Exchange Downtime is a situation that
may occur when the Exchange server encounters failure, shutdowns, or
experiences database or network connectivity issue, which disconnects
all the user mailboxes and puts a hold to the entire business activity
and email communications. This may happen during the database restore
process.
Thus, it’s recommended that you perform
the database restore task outside the work hours to avoid disruption in
business continuity.
Methods to Restore Exchange Mailbox Database to New Server
Method 1: Use Database Portability
Database Portability is the easiest way
to move Exchange mailbox database to a different server. It helps in
quick migration of Exchange mailbox database from old server with
minimal downtime.
What is Database Portability?
It is a Microsoft Exchange Server
feature that allows admin to mount, move, or restore mailbox database on
any target Server easily. It helps in decreasing the overall recovery
time. The feature is available in Exchange 2007, 2010, 2013, 2016 and
2019.
However, you can move mailbox database
from one server to other (new) in the same organization. The other
Exchange server database should have same database schema version as of
the old. Also, you cannot restore or move database from previous
Exchange server versions to newer versions.
IMPORTANT NOTE:
Database Portability works if the source and target Exchange servers are
running on the same operating system and Exchange Server versions.
For instance, if your current Exchange mailbox database is running on
Windows Server 2012 and Exchange 2013 Server, you can only restore it to
a new server running on Windows Server 2012 and Exchange 2013.
Things to Consider Before you Begin:
- The account you
will be using should have required permissions for performing procedures - The account on
current Exchange and another Exchange server should have Organization Management and Recipient Management permissions on local and new target server
Steps are as follows:
- Check Database to ensure it is in a Clean
Shutdown state. In case, if it is step ahead. And, in case
if it is not, then perform a soft recovery. To do so, open command prompt and
run the command.
1 | ESEUTIL /R <Enn>. |
- Now, create a database on the server. To create,
use the following command,
1 | New-MailboxDatabase -Name <DatabaseName> -Server <ServerName> -EdbFilePath <DatabaseFileNameandPath> -LogFolderPath <LogFilesPath> |
- Now, set that ‘This database can be overwritten
by restore attribute’. To set it, just run the Exchange Management Shell
command,
1 | Set-MailboxDatabase <Database Name> -AllowFileRestore:$true |
- Now, copy the database files such as Exchange
Search catalog, .edb files, and log
files to the specified database folder on new server - After successful completion of moving process,
mount the database. To mount the database, use the Exchange Management Shell
command,
1 | Mount-Database <Database Name>. |
- Enter the following command to move users from old database to new,
1 | Get-Mailbox -Database <SourceDatabase> |where {$_.ObjectClass -NotMatch ‘(SystemAttendantMailbox|ExOleDbSystemMailbox)’}| Move-Mailbox -ConfigurationOnly -TargetDatabase <TargetDatabase>. |
- To trigger delivery of any pending message in the queue, use the
following syntax,
1 | Get-Queue <QueueName> | Retry-Queue -Resubmit $true. |
Now, on successful completion of Active Directory replication service, you can easily access your Mailbox Database on the New Exchange
Server.
Problems with Database Portability Method
- Dismounts the database and thus, downtime is
expected - Requires you to copy Exchange database to new
server manually. This could take a lot of time and resources depending on the
size of database and network speed - Requires you to perform soft recovery for the
database, if it’s not in clean state - Active Directory replication and Re-submit queued messages increase
downtime
NOTE: This
also requires you to first rebuild the new server if the first server
failed. The new server should be an exact copy of the old with same
hardware and software configuration. See Rebuild New Server as Exact Replica of old Exchange Server to know more.
Method 2: Use Windows Server Backup (WSB)
On your current server, use Windows
Server Backup to create backup of database you want to restore to new
server. Once done, follow these steps on the new server,
- Open Windows Server Backup and click Recover to start the Recovery Wizard
- Choose ‘Another Server’ from the option and click ‘Next’
- Choose location type and click ‘Next’. You can either choose Local drives or Remote shared folder, wherever you have stored the database
- Select the backup date and time for data restoration and click ‘Next’
- Select ‘Applications’ and click ‘Next’ and then ‘Next’ again
- Choose ‘Recover to another location’ and click ‘Browse ‘to specify the location
- Choose which database you want to restore on the new serverIMPORTANT NOTE: The
restored database will be in dirty shutdown state and thus, you will
need to put the database back into clean shutdown state by using
Eseutil. - Review and confirm the restore settings and click ‘Recover’
- Once the process is completed, click ‘Close’
To check if this worked, go to the
directory where you restored the database and check if the database
exists. You may also check the WSB logs to verify the job status.
Method 3: Restore via Dial Tone Recovery
If the old server is running
fine but database is not mounting due to corruption, you can use the
dial-tone recovery technique to get things operational quickly. All
users will be able to send and receive emails. Thus, it can help avoid
downtime while you fix and restore the data from the historical
database. See how to Perform Dial tone recovery to avoid downtime to know more.
Method 4: Using Exchange Repair Tool
Database Portability based method has
its own limitations and Windows Server Backup (WSB) requires you create
backup data first in order to import it on the new server. This requires
your current Exchange database and server to be in working state. Also,
this can be done within the organization, in the same forest.
If you want to restore Exchange mailbox database to a new server or the
EDB is not accessible/dismounted, the methods can’t help. For such
situations, you should use an Exchange Recovery tool such as Stellar
Repair for Exchange. It lets you export the Exchange mailbox database
directly to Live Exchange server.
Stellar Repair for Exchange: An Overview
Stellar Repair for Exchange is an
Exchange mailbox repair and recovery software to get back your mail
items from corrupt or inaccessible Exchange mailbox database (EDB)
files. This professional Exchange Database Recovery
software is easy-to-use and has advanced features for seamless EDB
Recovery. By using this software, you can restore and mount Exchange
mailbox database from one server to another with minimum downtime.
It lets you export the repaired
Exchange mailbox database files to various formats such as PST, HTML,
RTF, EML, PDF, and MSG. As mentioned earlier, you can also export the
Exchange mailbox database directly to new Live Exchange server or Office
365.
Reference: https://gallery.technet.microsoft.com/office/Exchange-2016-Recover-a-87622713
Conclusion
Restoring Exchange Mailbox Database to a
different Server is not an easy task. With manual methods, you can
effortlessly restore the Exchange Mailbox Database from the existing
Server to another Server. And downtime during such executions is
expected.
Thus, it’s better to use a software
tool such as Stellar Repair for Exchange to restore Exchange mailbox
database. It’s a powerful Exchange repair and recovery software that
lets you export Exchange Mailbox Database directly to new Live Exchange
server in the most efficient and secure way, even if the Exchange
database is inaccessible or corrupt.