Applies to: Exchange Server 2013

Topic Last Modified: 2013-01-28

You can use database portability to move a Microsoft Exchange Server 2013 mailbox database between Exchange 2013 Mailbox servers in the same organization. This can help reduce overall recovery times for various failure scenarios. To learn more, see Database Portability.

What do you need to know before you begin?

  • Estimated time to complete: 5 minutes, plus the time it takes to restore the data, move the database files, and wait for Active Directory replication to complete.

  • You need to be assigned permissions before you can perform this procedure or procedures. To see what permissions you need, see the "Mailbox recovery" entry in the Recipients Permissions topic.

  • You can't use the EAC to move user mailboxes to a recovered or dial tone database using database portability.

  • For information about keyboard shortcuts that may apply to the procedures in this topic, see Keyboard Shortcuts in the Exchange Admin Center.

Having problems? Ask for help in the Exchange forums. Visit the forums at: Exchange Server, Exchange Online, or Exchange Online Protection.

Use the Shell to move user mailboxes to a recovered or dial tone database using database portability

  1. Verify that the database is in a clean shutdown state. If the database isn't in a clean shutdown state, perform a soft recovery.

    When you perform a soft recovery, any uncommitted log files are committed to the database. If you don't have all of the required log files, you can't complete the soft recovery process. Proceed to step 2.
    To commit all uncommitted log files to the database, from a command prompt, run the following command.

    Copy Code
    ESEUTIL /R <Enn>
    <Enn> specifies the log file prefix for the database into which you intend to replay the log files. The log file prefix specified by <Enn> is a required parameter for Eseutil /r.
  2. Create a database on the new server, as shown in this example. The paths used in this example are for illustration purposes only.

    Copy Code
    New-MailboxDatabase -Name DB1 -Server MBX1 -EdbFilePath C:\Databases\DB1\DB1.edb -LogFolderPath C:\Databases\DB1
    To create a database, see Create a mailbox database.
  3. Set the This database can be over written by restore attribute using the following syntax.

    Copy Code
    Set-MailboxDatabase <Database Name> -AllowFileRestore $true
  4. Move the database files (.edb file, log files, and Exchange Search catalog) to the appropriate location. The database files need to be present and in the correct location for recovery operations to succeed.

  5. Mount the database using the following syntax.

    Copy Code
    Mount-Database <Database Name>
  6. After the database is mounted, modify the user account settings with the Set-Mailbox cmdlet so that the account points to the mailbox on the new mailbox server. To move all of the users from the old database to the new database, use the following syntax.

    Copy Code
    Get-Mailbox -Database <SourceDatabase> |where {$_.ObjectClass -NotMatch '(SystemAttendantMailbox|ExOleDbSystemMailbox)'}| Set-Mailbox -Database <TargetDatabase>

After Active Directory replication is complete, all users can access their mailboxes on the new Exchange server. Many clients are redirected via Autodiscover. Microsoft Office Outlook Web App users are also automatically redirected to the new server.

How do you know this worked?

To verify that you've successfully moved a mailbox, do the following:

  • Open the mailbox using Outlook Web App.

  • Open the mailbox using Microsoft Outlook.