As I was playing with the Exchange 2010 Console, the “Move Request” section under Recipient Configuration caught my attention. But, there was no option other than to export the list. So, I decided to run a mailbox move and see what happens. Two types of mailbox move is supported in 2010.
- Local Move – Moving a mailbox from one database to another on the same or different server, as long as the servers are in the same exchange organization.
- Remote Move – Moving a mailbox to a database in a different forest.
More Info Added:
Mailbox move in 2010 is asynchronous and hence users can still access data while the mailbox gets moved. The actual move is performed by a new service in 2010 named “Exchange Mailbox Replication” service. This service runs on a CAS server and that indicates that the CAS servers are responsible for the mailbox moves.
The mailbox’s dumpster IS moved, as long as both source and destination servers are 2010. The mailbox move history is maintained in the mailbox.
Mailbox move from Exchange 2000 and 2007 SP1 to 2010 is not supported.
In order to move a mailbox from one database to another within the same organization, launch EMC and navigate to Recipient Configuration -> Mailboxes. Right click the mailbox in question and select “New Local Move Request”.
Select the target database for the mailbox.
Select your move option – whether to skip the mailbox move if corrupted messages are found or to skip a few corrupted messages & go ahead.
A summary of the mailboxes that are moved is displayed. Click New to continue.
The wizard checks and initiates the mailbox move by submitting a mailbox move request. Take a close look at the cmdlet & you will find out that the cmdlet run is New-MoveRequest and not Move-Mailbox. Click Finish to complete your mailbox move request.
Exchange hasn’t finished moving the mailboxes, but has only received a request to move. In order to find out the status of the mailbox move, we need to go to the “Move Request” section. The list of mailboxes getting moved along with the status is displayed. You can use Get-MoveRequest cmdlet to get the status of the mailbox move if you prefer to use the shell.
You can double click on any mailbox to get more information.
In short, mailbox move process has been slightly changed in Exchange 2010. The admin submits a move request to the server and the actual move is run in the background & hence it would appear that the mailbox move wizards have completed pretty quickly even for large mailboxes. The reason being the process runs in the background, whereas in Exchange 2007 the wizard actually runs through the entire process & once you finish the wizard, all the mailboxes will be in the target database.
To move a mailbox using the shell, run the command
New-MoveRequest –identity username –TargetDatabase “database name”
Once the mailbox move is initialized, you can check the status by running
Get-MoveRequest –identity username
Cloud Architect & Blogger with interests in Office 365, Enterprise Mobility & Security and Azure. I am active on Experts Exchange & TechNet forums and I am a technical author for SearchExchange. Follow me on Twitter, LinkedIn, Facebook or Google+ for the latest updates. For consultancy opportunities, drop me a line.