Thursday, 09 June 2011 05:25

Exchange 2010 Mailbox MoveRequest (Mailbox Move) Introduction

Written by
We all are well aware about the mailbox movement tasks in different versions of exchange. When compared to the previous versions of Exchange, Exchange 2010 SP1 gives you more featured mailbox MoveRequest cmdlet.
@ A Glance changes in Exchange 2010 SP1,
  • Soft delete the mailbox in the source mailbox in the source database.
  • MoveRequest cmdlet has been updated to support moving archives to separate database.

Now, what is this Soft-Deleted mailbox?

I feel that the name itself gives us an answer. When a mailbox is moved from one database to other, the original mailbox has not been deleted immediately after the successful move. The mailbox in the source database switched in to a soft-deleted state. In case if you need to restore any data from this mailbox, you can use the MailboxRestoreRequest cmdlet set. This soft-deleted mailbox retained until the retention period set on the source database for deleted mailboxes.  You need to ensure that both the source mailbox server and the CAS server are in Exchange 2010 SP1 when performing the requests. We can use the cmdlet Get-MailboxStatistics against the database and look for the mailboxes in which the DisconnectReason property value to set to SoftDeleted.

Let’s now see some limitation of the mailbox move in previous versions of exchange,
  • The will not be able to access his/her mailbox when the movement is in progress, or the mailbox moves are offline.
  • We need to keep the session active (Shell, Console etc) while the move is in progress
  • Dumpster data never moved to the target database, causing lose of accidently deleted mails.
  • Indexing starts only after the completion of mailbox move, hence affecting the search mails until the completion of indexing.
  • Direct access to AD and Database is required when we move mailbox across the forests.
But, when we use the MoveRequest cmdlet in Exchange 2010,
  • Mailbox move is synchronous and the move is performed by the Mailbox Replication Service (MRS), this service runs on all CAS servers.
  • Mailbox will be still accessible during the movement, means it is online.
  • The recoverable Items folder is also getting moved along with it.
  • The content indexing starts along with the mailbox movement, hence a faster search experience to the end users on completion of movement.
  • Mailbox move can be managed from any Exchange 2010 server within the organization
  • Mailbox move does not depend on an administrative computer. As mentioned above in the limitation, in 2007 we have to keep the administrative session active until the completion of movement.
  • Move history is maintained in mailbox
  • The throttling can be set to MRS instance, every database and mailbox server to ensure no performance bottleneck.
The below services are important to initiate a mailbox move.
  • Microsoft Exchange Mailbox Replication service (MRS)
  • Microsoft Exchange Mailbox Replication Proxy (MRSProxy) service
Let’s quickly see the high level steps when we move a mailbox,
  • Administrator submits Move mailbox Request
  • The MRS (Mailbox Replication Service) picks up and creates mailbox to be moved in the target database
  • Start the incremental sync of the mailbox data
  • Once it reaches the finish point,
          -Locks the mailbox for login
          -Sync any new or changed items
          -Update AD attributes
          -Unlock the target mailbox and soft-delete the source mailbox.
  • Mark the mailbox movement as complete.
Below mailbox attributes are added when we do the mailbox movement,
  • MSExchangeMailboxBatchName
  • MSExchangeMailboxMoveFlags
  • MSExchMailboxMoveRemoteHostName
  • MSExchMailboxMoveSourceMDBLink
  • MSExchMailboxMoveStatus
  • MSExchMailboxMoveTargetMDBLink
Along with the details above, it is also important to understand the ports used by MRS. Here are the details; this may help you to troubleshoot the issue related to the mailbox moves.
  • MRS listens on TCP port 808 for move requests
  • MoveRequest cmdlet use the same 808 port to communicate with the MRS instance.
  • The MRS also has dependency on the Net.TCP Port Sharing service to be running.

Sample MoveRequest cmdlet,

New-MoveRequest -Identity This email address is being protected from spambots. You need JavaScript enabled to view it. -TargetDatabase "HeloEDDB02"

The above command will move the Mailbox Praveen to the target database HeloEDDB02(remember there are no server dependency for database from the exchange 2010 version onwards). We can also use few shell scripts to move mailboxes, I will come with more examples and explanation on mailbox moves in my coming post.

One more reason why we need to think for migrating to Exchange 2010.

Write your comments…

theme by reviewshub