Thursday, 10 January 2013

Migrating mailboxes between Exchange 2010 servers

Build and configure new servers, then configure CAS and HT selection as required (in case there are multiple CAS and HT servers).

Moving mailboxes between databases in Exchange 2010 server(s) can cause issues such as detection of corrupted items. If a move request is configured to skip mailboxes in case a corruption is detected, such mailboxes will be skipped (this is recommended option).

It seems that it’s not possible to find out what items were detected as corrupted, so the only way to migrate such mailboxes is to configure the number of corrupted items:

Skip the corrupted messages > Maximum number of messages to skip: …

To find out how many items were detected as corrupted, start with 1 and increase if necessary.

Note: The issue with detecting corrupted items in mailboxes during a move occurs only in Exchange 2010 SP2 RU3, RU4 and RU5, so it’s probably wise to keep the Exchange 2010 on SP2 without installing the latest RU until the migration of mailboxes is completed, and then upgrade the new Exchange with the latest RU that has been out for some time and without any major issues reported.

If a new CAS is introduced in the Exchange Organisation, the clients will continue connecting to the old CAS. To force the clients to connect to the new CAS, once the move is completed and the old CAS can be decommissioned (in case it’s not required any longer), uninstall Exchange from the old CAS and remove its RR from DNS. This will prompt clients to discover the new CAS and connect without end-user intervention. In case Outlook cannot connect, the end-user will need to re-run the profile configuration wizard, which will force the client to connect to the new server.

If a new HT is introduced in the Exchange Organisation, the mail servers will start load balancing the traffic between all the HT servers in their local site, so configure the mail servers to use a specific HT server(s) if it's necessary to isolate the traffic. If connectors have not been configured for the new HT server, and a mail server starts sending messages to the new HT server for SMTP delivery, the messages will be queued, and will not be processed even after connectors have been created and configured. To process those messages, restart the transport service on the HT server in question, once the connectors have been configured.

Useful cmdlets:

List all databases and their CAS servers:
get-MailboxDatabase | fl Name,RpcClientAccessServer

Configure a database to use a specific CAS server:
Set-MailboxDatabase -Identity dbName -RPCClientAccessServer CAS server name

Identify HT servers used by mailbox servers for outgoing email:
get-mailboxserver | fl Name,SubmissionServerOverrideList

Configure a mailbox server to use a specific HT server:
Set-MailboxServer -Id: Mail server name -SubmissionServerOverrideList: HT server name

List mailboxes in a specific database:
get-mailbox -database DB name

List system mailboxes in a specific database:
get-mailbox -database DB name –arbitration | ft -wrap -auto

To move all the system mailboxes from one database to a new database:
get-mailbox -database current DB name -arbitration | new-moverequest -targetdatabase new DB name

If a database cannot be deleted due to an active move request, even though Get-MoveRequest doesn’t return anything, you may need to dismount the database and then remove it through ADSIEdit.

Microsoft Exchange Error (

In ADSIEdit, select Connect to..., under "Select a well known Naming Context" select Configuration -> CN=Configuration -> CN=Services -> CN=Microsoft Exchange -> CN=YourExchOrgName -> CN=Administrative Groups -> CN=Exchange Administrative Group (FYDIBOHF23SPDLT) -> CN=Databases -> Select the database name and delete it.

Once completed, move the default OAB to the new server.

Dismount and delete old databases. Then uninstall Exchange from the old mail server.

More info:
Cannot remove mailbox database due to invisible move request
Corrupted Items and Mailbox Moves in Exchange 2010
Exchange 2010: How to Delete the First Database and Move the System Mailboxes
Identifying "corrupt" mailbox items in Exchange 2010 SP1 prior to mailbox move?
Moving mailboxes - where to find info on detected corrupted items?
The Case of the Hub Transport Server Load Imbalance
Warning: Failed to clean up the source mailbox after the move

No comments:

Post a Comment