How to Move an Archive Mailbox in Exchange Server 2010

The Exchange Server 2010 RTM version did not have the ability to locate the archive mailbox on a different mailbox database than the user’s primary mailbox.  However Exchange Server 2010 SP1 added this feature, making it possible to create dedicated archive mailbox databases.

Moving archive mailboxes follows a similar process to moving other mailboxes, by using Move Requests.

How to Move the Exchange Server 2010 Archive Mailbox of a Single User

To move an archive mailbox start the New Local Move Request wizard.

Start the Exchange Server 2010 New Local Move Request wizard

Start the Exchange Server 2010 New Local Move Request wizard

Select the mailbox database to move to, and also choose the option to move the archive mailbox only.

Choose the destination for moving the archive mailbox in Exchange Server 2010

Choose the destination for moving the archive mailbox in Exchange Server 2010

Complete the new Move Request and wait for it to finish processing.

You can also intiiate the Move Request from the Exchange Management Shell.

[PS] C:\>New-MoveRequest -Identity "Alan.Reid" -ArchiveOnly -ArchiveTargetDatabase "Archive Mailboxes"

DisplayName               Status                    TotalMailboxSize          TotalArchiveSize         PercentComplete
-----------               ------                    ----------------          ----------------         ---------------
Alan Reid                 Queued                    0 B (0 bytes)             0 B (0 bytes)            0

You can view the status of the Move Request in the Exchange Management Shell.

[PS] C:\>Get-MoveRequest

DisplayName                                    Status                    TargetDatabase
-----------                                    ------                    --------------
Alan Reid                                      Completed

When the Move Request is complete you can clear it.

[PS] C:\>Remove-MoveRequest "Alan Reid"

Confirm
Are you sure you want to perform this action?
Removing completed move request "Alan Reid".
[Y] Yes  [A] Yes to All  [N] No  [L] No to All  [?] Help (default is "Y"): y

The user mailbox properties will now reflect the new location of the archive mailbox.

Exchange Server 2010 Archive Mailbox Database attribute

Exchange Server 2010 Archive Mailbox Database attribute

How to Move the Exchange Server 2010 Archive Mailbox of Multiple Users

Since we already know how to identify which users have archive mailboxes enabled, we can use a similar Exchange Management Shell command to move all archive mailboxes to a different database.

[PS] C:\>Get-Mailbox | where {$_.ArchiveDatabase -ne $null -and $_.ArchiveDatabase -ne "Archive Mailboxes"}

Name                      Alias                ServerName       ProhibitSendQuota
----                      -----                ----------       -----------------
Paul Cunningham           Paul.Cunningham      ex2              unlimited
Alannah.Shaw              Alannah.Shaw         ex2              unlimited
Bozena.Kirton             Bozena.Kirton        ex2              unlimited
Diane.Jones               Diane.Jones          ex2              unlimited
Helen.Cail                Helen.Cail           ex2              4.688 GB (5,033,164,800 bytes)
Julian.Morozgalska        Julian.Morozgalska   ex2              unlimited
Maggie.Hengist            Maggie.Hengist       ex2              unlimited
Nicola.Clare              Nicola.Clare         ex2              unlimited
Sabi.Smith                Sabi.Smith           ex2              unlimited
Trevor.Reece              Trevor.Reece         ex2              unlimited

By piping that output to the New-MoveRequest cmdlet we can create Move Requests for all of those archive mailboxes with a single command.

Note: this is a long command line and you will need to scroll across to see the entire command.

[PS] C:\>Get-Mailbox | where {$_.ArchiveDatabase -ne $null -and $_.ArchiveDatabase -ne "Archive Mailboxes"} | New-MoveRequest -ArchiveOnly -ArchiveTargetDatabase "Archive Mailboxes"

DisplayName               Status                    TotalMailboxSize          TotalArchiveSize         PercentComplete
-----------               ------                    ----------------          ----------------         ---------------
Paul Cunningham           Queued                    0 B (0 bytes)             0 B (0 bytes)            0
Alannah Shaw              Queued                    0 B (0 bytes)             0 B (0 bytes)            0
Bozena Kirton             Queued                    0 B (0 bytes)             0 B (0 bytes)            0
Diane Jones               Queued                    0 B (0 bytes)             0 B (0 bytes)            0
Helen Cail                Queued                    0 B (0 bytes)             0 B (0 bytes)            0
Julian Morozgalska        Queued                    0 B (0 bytes)             0 B (0 bytes)            0
Maggie Hengist            Queued                    0 B (0 bytes)             0 B (0 bytes)            0
Nicola Clare              Queued                    0 B (0 bytes)             0 B (0 bytes)            0
Sabi Smith                Queued                    0 B (0 bytes)             0 B (0 bytes)            0
Trevor Reece              Queued                    0 B (0 bytes)             0 B (0 bytes)            0

When all of the Move Requests are completed don’t forget to clear them.

[PS] C:\>Get-MoveRequest | where {$_.Status -eq "Completed"} | Remove-MoveRequest

Confirm
Are you sure you want to perform this action?
Removing completed move request "Paul Cunningham".
[Y] Yes  [A] Yes to All  [N] No  [L] No to All  [?] Help (default is "Y"): a
About Paul Cunningham

Paul is a Microsoft Exchange Server MVP and publisher of Exchange Server Pro. He also holds several Microsoft certifications including for Exchange Server 2007, 2010 and 2013. Find Paul on Twitter, LinkedIn or Google+, or get in touch for consulting/support engagements.

Leave a Comment

*

We are an Authorized DigiCert™ SSL Partner.