Guide Explaining Exchange 2013 Batch Mailbox Move

Moving mailboxes in between different versions of Exchange server is one amongst those tasks which is often required by Exchange Administrators if they manage an Exchange environment that runs smoothly. But on the other hand, it is considered as an important task if they frequently execute Exchange transactions or migrations. Here in this section we will elaborate the process of Exchange 2013 batch mailbox move in detail for users along with some reasons that are responsible for Exchange mailbox move.

Additionally, at the bottom of the section a commercial tool is suggested to move Exchange 2013 mailboxes in bulk by resolving corruption issues in Exchange EDB files.

In the upcoming sections, we will discuss the given below topics in detail:

What Type Of Mailboxes Can Be Moved?

In Exchange 2013 there are 3 mailboxes that can be moved which are:

Local: These mailboxes are different databases that comprises of single on-premise Exchange forest.

Cross-Forest: These mailboxes are between two different on-premise Exchange forests.

Remote: Remote mailboxes are hybrid deployment between on-premises Exchange organization & Exchange online or vice versa. They comprises of 3 types:

  • Cutover: The place where all mailboxes are moved at once
  • Staged: Subset of mailboxes are migrate at a time
  • IMAP: Mailbox data is migrated using email client like MS Outlook

The process to move multiple mailboxes Exchange 2013 requires moving a source mailbox to target mailbox database that can be hosted on either on same server or on different server. It also symbolizes moving mailbox in different Active Directory (AD) site/Domain or even in different AD forest.

How To Move Exchange 2013 Mailbox In Batch?

The process of moving Exchange 2013 multiple mailboxes in batch is similar to 2010, but is consists of some improvements that shall be discussed before suggesting solutions to move mailboxes. In Exchange 2010 there is a concept named as batch moves that helps to migrate mailboxes, that continues in Exchange 2013 but has some extravagant facilities. In Exchange 2010 the concept of batch moves only helps to group move requests together, but 2013 it is greatly improved providing us facilities like:

  • The ability to move multiple mailboxes in large batches (True batch move).
  • Email notification facility when move is completed
  • Automatically retry and prioritization of mailboxes moves
  • Discarding of corrupt mailboxes automatically before migrating
  • Moving to particular database or allowing Exchange to choose a database

Ways To Move Mailboxes In Exchange 2013

Step 1: Exchange Admin Center To Move Mailboxes

For migrating single mailbox, begin the process with mailboxes view. In Exchange Admin Center (EAC) go to Recipients>Mailboxes, now choose mailbox which is required to move. In the bottom, at right hand side of the page a link if provided to move mailbox to another database.

Now in next step, select 'Migration View' and start 'Move to a different database' process.

Select number of mailboxes you want to move and click on 'Next' to proceed further.

Provide the migration batch name and select the target database to move into. If user forgot to select database, Exchange 2013 will automatically select the database for move. Also take care to choose either move only primary mailbox, archive mailbox or both at one time. Now click on 'Next' to proceed further.

Provide a user name who will receive the mail for confirmation of mailbox move.

Choose if you want the migration process start immediately or later on manually. This option is helpful in setting migration process ahead of time when you are fully prepared to move mailbox.

Also choose whether you want to automatically complete the mailbox move process or manually complete. When Exchange 2013 mailbox migration process in progress, user can access their mailbox right after completion of mailbox migration process. On the other hand when they are disconnected, this will help in controlling the timing as suited by end user.

Click on New to start the mailbox move request.

Also view the progress report of mailbox migration in batch in 'Migration View' in EAC.

After the completion of migration process there may be delay of several minutes because Active Directory Replication between sites may take time to reconnect to their mailbox.

Step 2: Exchange Management Shell To Move Mailbox

To bulk mailbox move Exchange 2013:

Get-Mailbox –Database | New-MoveRequest –BatchName –SuspendWhenReadyToComplete

In the above shown screenshot the move status is auto suspended at 95%.

To complete the process following command will be used:

Get-MoveRequest "batchname" | Set-MoveRequest –SuspendWhenReadyToComplete $false

Get-MoveRequest "Batchname" | Resume-MoveRequest

NOTE: Different switches can be used depending upon the requirements of users.

Now use CSV to move multiple mailboxes:

New-MigrationBatch –Local –Name LocalMove3 CSVData ([System.IO.File]: ReadAllBytes ("C: UsersAdministrator.MSEXchangeGuruDesktopMigration.csv")) –TargetDatabase Database12013

Start-MigrationBatch –Identity LocalMove3

Complete-MigrationBatch LocalMove3

To start and complete the move automatically used the following command and in the same way different switches can be added as per requirements.

New-MigrationBatch –Local –Name LocalMove3 CSVData ([System.IO.File]: ReadAllBytes ("C: UsersAdministrator.MSEXchangeGuruDesktopMigration.csv")) –TargetDatabase Database12013 -Autostart –AutoComplete

Step 3: Use Migration Batch To Move Mailboxes

In MS Exchange 2013 a brand new approach has been used for batch migration Exchange 2013 to migrate batches along with unique set of PowerShell Cmdlets to create and manage mailboxes. For this we need to manually add multiple users or to import a CSV file. For this we need to create a CSV file that contains all details of email addresses of the mailboxes.

Now open the CSV file and change the name of the header to 'Email Header'.

Create a new migration batch using New-Migration batch.

Here, email address of the account that was used to log in was used as email notification for migration batch.

If required we can add more email address for notification.

To start the migration process, use Start Migration Batch Cmdlets. Else users can also bank on Auto Start Parameter while creating the migration batch.


As you can see that using all above suggested methods, users can manage to move Exchange 2013 mailboxes. The procedure seems similar to run mailbox migration on Exchange 2010 and before but Exchange 2013 batch mailbox move is improved with some advanced features like EMAIL NOTIFICATION.

Additionally, the above suggested method does not support to move corrupt mailbox data into another mailbox. So if you have any corrupt mailbox data which you want to migrate into another mailbox then use RecoveryTools for Exchange Server that will not only provide the provision of bulk mailbox migration but also help to fix mailboxes corruption respectively.

The second way to move mailbox is using PowerShell, within which mailboxes hosted on database folder MB-BR-01, are moved as batch named "Branch Office Batch 1". Additionally, 'Suspend When Ready to Complete' feature is used to prevent automatic completion, so that it can later complete after initializing busy business hours.