Move mailbox

 

You must always use the 2013 EAC or the New-MoveRequest cmdlet to move mailboxes to, or between, Exchange Server 2013 mailboxes. Do not use the old Exchange Server 2007 Move-Mailbox cmdlet to do this. The process for moving mailboxes to Exchange Server 2010/2013
databases is significantly different than it was in earlier releases.

Mailboxes are now moved in the background by the Microsoft Exchange Server Mailbox Replication service (MRS) running on a Client Access server. The process is as follows:

1. The administrator submits a new move mailbox request.

2. The New-MoveRequest or new-migrationbatch request updates the Active Directory and adds the mailbox to be moved to a queue by adding a message to the system mailbox on the target mailbox database. The status of the request at this point is Queued.

3. An instance of the MRS (now running on the Mailbox server role, not the CAS as it did in Exchange Server 2010) in the Active Directory site that contains the target mailbox will see the move request. The MRS services on each mailbox periodically query the system mailbox on each database within the local site.

4. The MRS begins to move the mailbox data from the source database to the target database and updates the queue status to InProgress.

5. Near the end of the move, the mailbox is locked, a final synchronization occurs, and the status is changed to CompletionInProgress.

6. When the move is completed, the Active Directory attributes are updated, the old mailbox on the source database is deleted, and the new mailbox is activated. The status is changed to Completed. Client accesses to this mailbox will now be directed to the new mailbox database.

7. The administrator can clear the move request via the Remove-MoveRequest or new-migrationbatch cmdlet or via the Exchange Administration Center.

During the move, mailbox is always available and the actual move is handled server-to-server rather than through a computer running the admin tools. Further, items in the dumpster are also retained.
Administrators may find it handy to have statistics readily available about mailbox moves. They can retrieve this information using the Get-MailboxStatistics cmdlet. Mailbox move operations can be quite lengthy depending on a number of factors, including bandwidth between servers, server speed, available RAM, and disk I/O.

 

Using the EMS

You want to move everyone who is a member of the Marketing group to the mailbox database called MBX-001, you can use Get-DistributionGroupMember cmdlet to enumerate the membership of the Executives group and pipe that output to the New-MoveRequest cmdlet

 Get-DistributionGroupMember “#Marketing” | New-MoveRequest -TargetDatabase “MBX-001” -Confirm:$False

Or you can do a migration batch:

We create a batch first:

New-MigrationBatch -Local -Name MoveToGold -CSVData ([System.IO.File]::ReadAllBytes(“C:\Users\Administrator\Desktop\Goldusers.csv”)) -TargetDatabases mbdb-laxmb01-15

Then you can start the migration batch:

Start-MigrationBatch -Identity MoveToGold