Home » Exchange Server » Moving Exchange Server 2013 Mailboxes

Moving Exchange Server 2013 Mailboxes

In Exchange Server 2013 mailbox moves are performed using move requests.

There are a variety of ways that move requests can be used to move mailboxes in an Exchange 2013 organization, with such options as:

  • Moving individual mailboxes or batches of mailboxes
  • Moving primary mailboxes with archive mailboxes or moving them seperately
  • Completing moves immediately or suspending them for later completion
  • How many bad (corrupt) mailbox items are able to be discarded before the migration fails
  • Moving to a specific database or allowing Exchange to automatically choose a database

The Exchange 2013 servers will also apply their own intelligence to mailbox moves, slowing down or even halting a move if the server health is at risk (for example high CPU utilization).

Let’s take a look at some examples of mailbox moves using move requests in Exchange 2013.

Using the Exchange Admin Center to Move Mailboxes

For a single mailbox move you can begin the process from the mailboxes view. In the Exchange Admin Center navigate to Recipients -> Mailboxes and choose a mailbox that you wish to move. At the bottom of the right-hand side click the link to move mailbox to another database.


Alternatively, select the Migration view and start a new “Move to a different database”.


Select one or more mailboxes to be moved and click Next.


Give the migration batch a name, and choose the target database to move to. If no database is selected Exchange 2013 will automatically choose a target database for the move. Notice also that you can choose whether to move only the primary mailbox, archive mailbox, or both together. Click Next to continue.


Select a user to receive the email report for the move.


Choose whether to start the batch immediately or manually start it later. This option allows you to prepare your migration batches ahead of time and then manually start them when you are ready.


Finally, choose whether the move should automatically complete or should suspend when ready to complete, which requires you to manually complete it. When mailbox moves are processing the user can continue to access their mailbox right up to the point where the completion occurs, when they are disconnected briefly, so this option lets you control the timing of the completion to occur when it will be least disruptive to the end user.


Click New to begin the move request.

You can observe the progress of the migration batch in the Migration view in EAC.


When the migration is complete there may be a delay of several minutes due to Active Director replication between sites before the end user can reconnect to their mailbox, depending on where they are located relative to the Exchange servers.

Using Exchange Management Shell to Move Mailboxes

Here is an example of using PowerShell to manage mailbox move requests. In this case the mailboxes hosted on database MB-BR-01 are moved as a batch named “Branch Office Batch 1”. No target database is set so that Exchange 2013 can automatically distribute them between available databases. Also, SuspendWhenReadyToComplete is used to prevent automatic completion, so that it can be initiated at a later time outside of business hours.

You can view the distribution of mailboxes across target databases using Get-MoveRequest.

Progress can be monitored using the Get-MoveRequestStatistics cmdlet.

When the move requests reach 95% completed they will display a status of AutoSuspended. The end user can continue to use their mailbox at this time, and you can complete the moves at the desired time.

First remove the autosuspend flag from the move requests, so that they will resume all the way to completion.

Next, issue a Resume-MoveRequest command.

Monitor the move requests until completion.

Moving Mailboxes using Migration Batches

In the previous example we looked at using move requests to move multiple mailboxes. The move requests were added to a “batch” for ease of management. This is basically the same approach that could be used in Exchange 2010 to manage move requests.

Exchange 2013 has a new approach to migration batches with a whole new set of PowerShell cmdlets to create and manage them. I prefer PowerShell, but if you’d rather use the EAC you’ll notice that the first example in this article demonstrates how to create a migration batch. All you would need to do is manually add multiple users or import a CSV file. Let’s take a look at those CSV file requirements, which apply for either the PowerShell or EAC method.

To use Exchange 2013 migration batches we first need to create a CSV file containing the details of the mailboxes to move. The only required attribute to be included in the CSV file is the email address of the mailbox.

Open the CSV file and change the header to “EmailAddress”.


Next, create the migration batch with New-MigrationBatch.

I didn’t set a notification email for the migration batch, but it has used the email address of the account that I was logged in with to submit the move request.

We could add more email addresses for notification if we need to.

At this stage the migration batch hasn’t started. To start it use the Start-MigrationBatch cmdlet. Alternatively, use the -AutoStart parameter when creating the migration batch.

To see the progress of the migration batch run Get-MigrationUser and Get-MigrationUserStatistics.

You can do this for a single user, such as Aisha Bhari that was moved in an earlier example in this article.

Or do it for all users being migrated.

When you’re ready to complete the migration batch, which will cause short outages for each user, use Complete-MigrationBatch. Alternatively, use the -AutoComplete switch when creating the migration batch and it will automatically occur, which may disrupt your end users at an undesirable time.


As you can see there are multiple ways to manage mailbox moves in Exchange Server 2013. Move requests will already be familiar to those who have run mailbox migrations on Exchange 2010 before, whereas the new Exchange 2013 migration batches offer some improved features such as notification emails.

Paul is a Microsoft MVP for Office Servers and Services. He works as a consultant, writer, and trainer specializing in Office 365 and Exchange Server. Paul is a co-author of Office 365 for IT Pros and several other books, and is also a Pluralsight author.
Category: Exchange Server


  1. Chris Wagner says:

    Hello Paul

    I have a question for the moving of a mailbox named Discovery Search Mailbox
    DiscoverySearchMailbox {D919BA05-46A6-415f-80AD-7E09334BB852}

    Should this mailbox be migrated to Exchange 2013?

    There is a user Account in AD Container Users named DiscoverySearchMailbox

    Is it safe to delete or do you suggest to migrate it to exchange 2013?

    Your feedback is very appreciated

  2. Chris says:


    Have you discovered how to control the migration rates for Migration Batches? All documentation i have found states that the same MSExchangeMailboxReplication config file controls these limits. I have set the limits on all servers and restarted the service but Exchange continues to process all the mailboxes in the batch at the same time.


  3. Rob Derbyshire says:

    Hi Paul
    When moving from 2007 to 2013, which Servers actually copy the data?
    If we have a 4 node DAG (single mbx role), would running the batches in PS on each node separate the work?

  4. John says:

    Hi Sir,

    I got some error when moving user mailbox from exchange 2007 mailbox database to exchange 2013 mailbox database.

    Data migrated:
    Migration rate:
    Error: MigrationPermanentException: Mailbox size 237 MB ‎(248,501,907 bytes)‎ exceeds target quota 122.9 MB ‎(128,849,920 bytes)‎. –> Mailbox size 237 MB ‎(248,501,907 bytes)‎ exceeds target quota 122.9 MB ‎(128,849,920 bytes)‎.

    Your feedback is very appreciated

  5. Mitzi says:

    Any script to move [b]bulk[/b] mailboxes from specific DB to office 365? I know you can select a distribution group, but not all users in DG are to be migrated to O365.

    I’ve successfully been able to remote connect to O365, but the Get-Mailbox -Database test – is not recognized (through Windows PowerShell). And if I do it through Exchange Shell I get “user has already primary mailbox” whether the user is licensed or not.

    And if I do it through CSV – what should I exactly include in the -identity? EmailAddress?

    Thanks mate.

  6. Chris says:

    Trying to migrate from 1 exchange 2013 server to a different exchange 2013 server. Used move request to move user mailboxes, seems to have worked. Problem is when I shut the old server down, exchange on the new server stops working. User email disappears from the inbox and unable to send. Do you have or know of a step by step to migrate from 1 server to a different server?

  7. vijay prabhu says:

    sir we have migrated exchange 2007 to exchange 2013 and we are in mailbox move stage. but after mailbox move its taking more than 24hrs to take reflect to client machine(Windows XP, Outlook 2007 SP3). Is there any alternate to force the new server changes. Thanks In advance.

    • There’s a whole range of bugs with Windows XP clients and Exchange 2013. You’re running an unsupported operating system and an old version of Outlook. Do you see the same problems with the latest version of Office on at least Windows 7?

      • vijay prabhu says:

        Thanks for your valuable response sir, Yes we have some of the windows 7 with outlook 2010, these machine also not getting new exchange connection, for all machine we are taking remote and configuring outlook manually, still we are having 1000+ mailbox to move, any suggestion for quick replication.

  8. arun says:

    sir recently we migrated 2007 to 2013, After moving mail box when opening outlook it asking for password. We give password and select remember my password..after this outlook works fine..but after restarting system again it ask password..every time we restart system when opening outlook for first time asking password…we use ntlm authentication.

      • Brian says:

        Hi Paul,

        We are in the process of migrating user mailboxes from 2010 to 2013. After the migration is complete, the client opens Outlook and is prompted for credentials. The username field contains their email address which will not authenticate. If we remove the domain name portion and check the box to remember the password, they are able to authenticate. Then they are prompted with the message “The Microsoft Exchange Administrator has made a change that requires you quit and restart Outlook”. They then close Outlook and it reopens successfully.

        Thanks for any help!

  9. Mark Dickson says:

    I started a large migration batch using the new commands, it is going well with only a few very large mailboxes still moving. I’ve been requested to go ahead and complete some of the mailbox moves, I did not use the -AutoComplete option, but when I issue a Resume-MoveRequest on a specific mailbox it does not complete the move. Do I have to complete the entire batch at one time? Hopefully this is not the case, I’ve spent 3 days seeding over 1TB of mailbox moves that I need to complete in stages and would hate to start over using a different approach.

    • When you issue the resume command is it throwing an error?

      Or does the move request resume for a short time then autosuspend again? If so then you can use Set-MoveRequest to set the SuspendWhenReadytoComplete to $false for just that move request and then resume it, and it should complete without impacting the rest of the suspended moves.

      • Mark Dickson says:

        Thanks for the reply.
        I wasn’t getting an error, the move log would say something like,

        12/9/2014 11:27:12 AM [SERVERNAME] ‘Mark Dickson’ resumed move request.
        12/9/2014 11:27:18 AM [SERVERNAME] Job resumed with status ‘InProgress’.
        12/9/2014 11:27:18 AM [SERVERNAME] Relinquishing job.

        But apparently I just needed to wait it out, because almost exactly an hour later all 9 of the moves I was trying to complete began replication and completed. Oddly only a couple of them actually list a status of “Completed” in the details window of the EAC migration status. The others still say “Synced” but their logs indicated they are complete and they are in the new databases.

        Although not needed in this case now, I liked your idea of manually changing the SuspendWhenReadytoComplete to $false for the individual move requests. Thank you for your advice.

        • Rhonda says:

          Mark – did you ever figure out what your one hour issue was?
          I create my migration batch and it’s queued for exactly 60 minutes. I thought maybe something was timing out on the firewall but I can’t see anything.
          It does start and complete without error after the 60 minute mark but this is frustrating. We have an Exchange 2010 Hybrid setup.


  10. vman says:

    We are going to be migrating from exch 2007 to exch 2013. This will be done over a weekend so we dont need to have the 2 servers setup for coexist but my question is, when migrating the users from exch 2007 to exch 2013, they have to be out of thier email at the time correct because there is no way to have them in their email during this migration?

    • Sounds like you want some assurances about the user experience during the migration. Yes, they can keep using their mailbox. But more importantly, what you should be doing is a test migration of one mailbox (either a test mailbox or your own) and make notes about the step by step process as well as the user experience before, during and after the move, to validate any user scenarios that you have (eg shared mailbox access, delegate access, mail flow, mobile device usage, OWA, etc etc).

  11. mk says:

    Hi Paul,

    I am a great follower of your publications and I must say you have been of great help.

    I have a problem, I am trying to move mailboxes from Exchange 2010 to an Exchange 2013 mail server. I keep getting this error when I attempt to move a mailbox:

    “Object reference not set to an instance of an object”

    Would you know what could be causing this?

  12. emir says:

    Hi Paul
    recently I finished Exchange 2013 installation and i want to do migration from exchange 2010 sp3 to exchange 2013.

    first off all when i want to migrate one of the test mailbox from 2010 database to 2013 database this error has appeared:

    Cannot open mailbox /o=First Organization/ou=Exchange Administrative Group (FYDIBOHF23SPDLT)/cn=Configuration/cn=Servers/cn=EXC2013/cn=Microsoft System Attendant.

    after that i open the adsiedit and look at this path in my organization but i couldn’t find my exchange 2013 server.

    everything is working so good, i mean i can send an receive internal and external mail but mailbox migration doesn’t work.

    what can i do?

  13. emir says:

    Paul i resolve the replication error and deploy a new additional domain controller with server 2012 r2 standard operating system.
    today I move all of the FSMO roles to the new ADC and make it as a DC for my domain
    and demote the old DC that was 2008r2
    Now i want to install the new installation of exchange 2013 on the other server that is joint to this domain .
    but the ADSIEdit problem is the same

  14. farshad says:

    Hi Pual,

    I migrated one of our users from 2007 to 2013 and Exchange selected target database automatically and migration completed successfully. Now I want to move same user to another Database in 2013, I created migration task and after a while it showing me that migration was successful and completed but nothing happening , mailbox still is in automatically selected database.

    • What are you actually asking for help with?

      If you create a migration request and specify the target database it will be moved to that database. If you don’t specify a target database then one will be chosen automatically.

  15. Steve says:

    I want to migrate users via power shell that have UM voice mail and I imagine I will need something specifying the um dial plan ?

    I get parameter cannot be found that matches parameter name ‘UMMailboxPolicy’. when I specify …

    New-MoveRequest -Identity ‘fred@xyz.com’ -TargetDatabase “xyz Mailbox Store” -UMMailboxPolicy “Exch2013 Default Policy”

    Can you please offer any assistance please ?

    • There’s no -UMMailboxPolicy parameter for New-MoveRequest. You can refer to the TechNet page for New-MoveRequest to see available parameters.

      UM is not an area I’m very familiar with. You’re trying to change UM policies as part of the migration? Have you tested doing that after the mailbox is moved?

  16. Benjie says:

    Hello Paul

    I just want to check with you about the migration of exchange 2007 to 2013, I have successfully done the mailbox migration to 2013. My question is Do I need to move also the distribution, security group, room resources and contact created in exchange 2007 to exchange 2013?

    Thanks in Advance

  17. Ziv Rivkis says:

    Paul, I’ve noticed that you’ve used a -SuspendWhenReadyToComplete. I was just looking over the technet pages for this command and saw this “The SuspendWhenReadyToComplete switch specifies whether to suspend the move request before it reaches the status of CompletionInProgress. Instead of this switch, we recommend that you use the CompleteAfter parameter.” Any idea why and/or does it really make a difference?

    • Depends how you want to control the completion. If you want them to suspend until you actually initiate the completion yourself, then use the suspend option. If you’d just prefer they complete themselves after some time, then use the other option.

      Also, the -CompleteAfter parameter used to be reserved for Microsoft internal use only. That seems to have changed sometime recently.

  18. Joseph says:

    I am about to migrate mailboxes from Exchange 2010 to Exchange 2013. Should I create database copies before migrating mailboxes or after?



  19. Raphael says:

    Hi Paul,
    I used to follow many times you article to achive correclty Exchange 2007/2010 to 2013 migrations.
    Most of the time I’m using the EAC to create the move requests, but something disturb me a little.

    I don’t know if I’m right, but it seems to me, that it take longer to migration the same amount of data from an Exchange 2003 to 2010, that it takes today from 2007/2010 to 2013.
    I notice that the number of simultaneous thread increases from 2 to 8 with the new version and I believe that this is the reason of the very long time to transfert mailboxes.

    Recently I moved a 50 Go database, it took almost 24 hours and the storage was based on SSD Raid5.

    Could you tell me if also notice that it take more time with 2013 than before and do you if it possible to decrease the number of simultaneous threads of move ?

    Hope I’m clear… and thanks in advance for you advices.


  20. Ate says:

    I have a question about a failed migration of a user mailbox. I moved about 20 mailboxes and 4 have failed because the destination database had a limit of 2.3 GB (or so, I am not sure), while those 4 mailboxes were a lot larger. I increased the limit on destination mailbox, but when I try to migrate those 4 nothing happens. I guess they are “paused” but I haven’t found a way to resume them. What should I do?

    Oh yes, this was all a part of migration from 2010 to 2013

  21. TG says:

    “The Exchange 2013 servers will also apply their own intelligence to mailbox moves, slowing down or even halting a move if the server health is at risk (for example high CPU utilization).”

    Do you know if this includes disk space – ie if the disk space for your transactions logs is getting close to full, will it halt migrations?

  22. Mark Dickson says:

    There’s no “reply” button to respond directly to you for some reason.
    I never found out why all the moves I would try in that environment would queue for an hour then replicate. I had to just deal with it and move on as I was contracted for the migration and had a deadline to meet. I have worked in several other 2010-2013 mixed and hybrid environments and not had that specific issue, so I don’t have a good theory either, sorry.

  23. Jon says:

    This is brilliant information (as is expected from your site). I do however have a question I cannot find the answer to anywhere. How do I view the mailboxes in a batch migration that has not yet been started…?

    Scenario: I create a migration batch during production hours, that I want to kick off during off hours. Evening comes, and I want to do a final check that the mailboxes in the migration batch are definitely the ones I want to migrate…how do I view them? I can get the count of mailboxes in the batch using get-migrationbatch, but a get-migrationuser shows me nothing. I can find nowhere in the EAC or using various PS commands that get me this information…

    I tried pulling the information using get-mailbox as there are several properties related to batchmove status etc. but these fields are blank, presumably populated when the batch starts/completes.

    Any ideas would be much appreciated. I’m sure I am just missing something obvious 🙂

  24. Chris says:

    I migrate a mailbox from Exchange 2007 to 2013 and the migration works fine but when I try to move them to a different database on the 20013 Exchange server they say complete and the don’t move to the target database that was selected.

    • The second move is probably failing because there is already an existing move request for that users (from the first move). When that happens the mailbox is removed from the migration batch, and the batch completes successfully, which is slightly confusing until you open the details of the migration batch and see that the mailbox is no longer in the batch.

  25. Ryal says:

    Hi Paul,

    I have a test environment in which I would like to move mailboxes from one 2013 server to another. The issue I’m having, is that mailboxes on the 2nd server are unable to send or receive mail. In the delivery report, it gets stuck on pending. I have created another server, but when I create mailboxes on this, I get the same issue where they cannot send mail.

    Any idea why this is happening?

  26. Ross says:

    Hi Paul

    We had an exchange 2013 SP1 server with CAS and MAilbox role installed, i have now installed a second Exchange 2013 SP1 server and just installed the mailbox role on this server.

    These servers sit on different subnets and are connected with a hardware VPN, DNS resolution of the servers works fine both ways.

    I migrated a test mailbox from SERVER1 to the new mailbox server and that completed successfully, in ECP i can see the mailbox is located in the new database and i can send emails from that mailbox without issue, however the mailbox cannot receive any emails, internal or external.

    When i check the delivery report on SERVER1 i get the following error.

    4/11/2015 8:50 PM SERVER1

    The message was submitted to SERVER1


    4/11/2015 8:50 PM SERVER1

    Message was received by SERVER1 from SERVER1.

    4/11/2015 8:50 PM SERVER1

    The message has been queued on server SERVER1′ since 4/11/2015 8:50:04 PM (UTC+10:00) Brisbane. The last attempt to send the message was at 4/11/2015 8:47:14 PM (UTC+10:00) Brisbane and generated the error ‘[{LRT=};{LED=};{FQDN=};{IP=}]’.

    • Ross says:

      any suggestions on where i should check to fix this? I added an internal SMTP connector on SERVER1 and pointed it to server2.

      • There’s no special connectors required to be created by you for two Exchange servers in your organization to talk to each other.

        As long as they can reach each other on TCP port 25 they can send email back and forth to each other. There’s lots of possibilities as to what can interfere with that. Firewalls, WAN accelerators, antivirus/security products installed on the server that block port 25 (McAfee is a common culprit for that).

        • Ross says:

          Thanks paul

          I worked it out, SERVER1 had the default gateway set as the second DNS server, once i removed this mail started flowing correctly

  27. Lonleysurvivor says:

    Hello Paul, thanks for this superbe documentation. Do you have any clue why durring the migration the whole batches are “stalling” and allmost nothing more happens…? what could we concider? rebooting a service? which log should we concider to come to a result? thanks in advance.

    > we copy arround 700 Mailboxes with (50 Batch and about Plus miuns 100-1G / per Mailbox)

  28. Josh L says:

    We’ve been operating an Exchange 2010 environment for a few years and have recently added two Exchange 2013 servers. We have 3 databases on the new servers (DAG groups, all active on one and passive on the other) with various storage quota sizes. I’m in the process of migrating mailboxes from 2010 to 2013 and some on them were put on the wrong 2013 database, so their storage quota is too low.
    When trying to migrate these users from one 2013 database to another, it finishes – status ‘Completed’ – but nothing moved. The columns (Total, Synced, Finalized, Failed) all have 0 in them.
    Can you help shed any light on why I can’t migrate mailboxes between databases on the same server?

  29. Rakesh Razdan says:

    I am trying to migrate exchange 2013 from old server to a new infrastructure with windows 2012 and Exchange 2013. Currently the old server [old server1] is running smoothly.
    I need to migrate the EXchange 2013 in same AD from old server to new server.

    Tasks I have completed.
    1. Installed windows 2013 on new server
    2. add this new server as memberserver
    3. Prepared the exchange 2013 on new server
    4. Installed Exchange 2013 on new server
    5. Started the Move mailbox with “using the Exchange Admin Center”

    From here I do the complete the installation to decommission the old server.

    I would request your technical assistance on this ASAP.

  30. Debashis baidya says:

    My mailbox size is 8.35gb and when i move the mailbox to local termination database it was under queue a long time (2 hrs) after that it will not complete. in EXCHANGE 2013

    please give me suggestions

  31. Andrew Keywood says:

    Hi Paul – have just the one Exchange 2013 CU8 Server Standard Edition and have 5 DB’s which are setup for different accepted domains, today migrated using ECP 10 mailboxes from one DB to another, when checking in PowerShell with Get-MailboxStatistics – Database notice the some of these mailboxes are now in both DB the original and new. Not sure how that’s happen, can you think of an explanation.

  32. Rami Eido says:

    Dear Paul,

    After migrating most of the mailboxes from Exchange 2007 to Exchange 2013 successfully and distributed in several Databases ( i am using the standard version (5 Databases)).
    after that, i needed to move some of the mailboxes from one of these databases to another database (inside the Exchange 2013) when the moving starts it takes maximum 1 min and when i press on details i don’t find any email in it and it says finalized without making any change. in the migration feed the batch name is there but empty and the mailboxes remains in the old database..
    is there any thing i should do before moving these mailboxes ? because it’s not logic if i cant move any mailbox from a db to another..
    please advise.


    • Rami Eido says:

      Dear Paul, i found the solution for this issue
      All i needed to do is to delete the old batches that contain the Mailbox i need to move and then create a new batch.. 🙂

  33. Suz says:

    Hi Paul,

    I migrated users from on premise to cloud. Even after thatthose users are coming in the list of “to be migrated users”. HO can I remove those users from that list?

  34. Ionut says:

    Hi Paul,

    I migrated some mailboxes to a newly created Database (DB05) in Exchange 2013.
    I am confused about one thing:
    In ECP the migrated mailboxes appear in the new database but if I run Get-MailboxDatabase “DBname” | Get-MailboxStatistics | Sort totalitemsize -desc | ft displayname, totalitemsize, itemcount from PowerShell migrated mailboxes still appear also on the old database (as well as in the new database).


  35. naji says:

    after moving mailboxes from exchange 2010 to 2013, the size of mailboxes in 2010 remains, how I can clear them to see if there isany mailbox not moved?

  36. Daniel says:

    Hi Paul,

    Currently in the throws of migration and have been doing plenty of late night reading to try and speed up my migration! We’ve got Exchange 2013 CU11, and Exchange 2007 all patched up. I’ve installed as coexistance, ActiveSync working perfectly, and some users working correctly in Outlook, however other users just sit there for 5 mins trying to connect to Exchange. Currently we’ve got users on a mixture of webmail and outlook and i’m desperately trying to migrate them onto the new server, however moving 1400Gb of mail is proving difficult! Is there any way to speed up the transfer between the servers – they just seem to sit idle for 95% of the batch…



    • Migration speed is dependent on the performance of the source and the destination. If either are under heavy load, the migration will slow or stall completely.

      That said, I’ve heard of 2007 -> 2013 being particularly slow for some projects. I’d suggest you open a Microsoft support case as there might be some supported changes you can make under their guidance to config files to speed things up.

  37. Faic says:

    Hi Paul,
    can I run the command: New-MailboxRepairRequest -Identity “ProblemMailbox” -CorruptionType ProvisionedFolder,SearchFolder,AggregateCounts,Folderview -Force

    on the single mailbox while mailbox migrations are currently in progress? I need to know before I issue this command.

    Please confirm.
    thanks, faic

  38. Faic says:

    Hi Paul,

    This particular mailbox failed during migration so I want to fix this using the command above, but other mailboxes are still in progress.

    If I run fix on this problem/failed mailbox, will it affect the others in progress? Or I need to run when no mailbox migrations in progress?

    please confirm.


    • You can remove that mailbox from the batch, and the rest of the batch will continue. That gives you the opportunity to do whatever you need to do on the failed mailbox, then you can create a new batch for that mailbox when it’s ready to try again.

  39. Saeed Khalifi says:

    Hi Paul. Thank you for this great article.

    In this command
    Get-Mailbox -Database MB-BR-01 | New-MoveRequest -BatchName “Branch Office Batch 1” -SuspendWhenReadyToComplete

    How can i set the target database in the above command?
    Thanks in advance.

  40. Jeff says:

    Doing a 2010 to 2013 migration. Everything seems to be in place.
    We are using a third party smart host for spam filtering that forwards via IP address to the new EX2013 server which in turn is forwarding to the EX2010 server. I moved a test mailbox to the EX2013 and can connect via OWA and successfully log in and send an email.

    The issue: When you send an email to the migrated mailbox it gets stuck in the EX2010 queue with the error 421 4.4.1

    I checked to make sure all connectors had Exchange Server Authentication enabled.
    From the EX2010 server I checked the SPN (setspn -L) and I see the EX2013 server.
    From the EX2010 server I checked the receive connector (get-receiveconnector | ft name,) on the EX2013 and can see the connections.

    Yet the old server will not send inbound email to the migrated mailbox.

    Thank you in advance

    • What is the full error?

      Have you modified any of the default receive connector settings on either server?

      Have you created a send connector on the 2010 server that points to the 2013 server (you shouldn’t, but lots of people do, and it breaks mail flow)

      Can you telnet to each server from the other one on port 25?

      • Jeff says:

        I did not modify the 2013 Default Rcv connector.
        I had to allow Exchange Server Authentication on the 2010 to allow flow to it from the 2013. After that I made sure it was enabled on both ends.
        After clearing the queue inbound mail to the migrated mailbox on 2013 is working from external sources.
        All external mail is being routed to the 2013 and is correctly being routed to mailboxes on the 2010 server.
        I can successfully send a test message from the 2013 account to a 2010 account.
        However the reply is stuck. Seems everything internal is not flowing from the 2010 to the 2013.

    • Jeff says:

      The latest error from the 2010 message queue:
      451 4.4.0 Primary target IP address responded with “421 4.4.1 Connection timed out.” Attempted failover to alternate host, but that did not succeed. Either there are no alternate hosts, or delivery failed to alternate hosts.

      And yes I can telnet to both machines by IP address and FQDN.

  41. Sharique says:

    Hi Paul,

    I tried to move few users in a batch from an existing database to a new database in exchange 2013, it says completed successfully without any mailbox move. Synced: None, Total Mailboxes: None.
    Same result if I try to move a single user.
    Also, tried to move user from existing database to another existing one. Same result.

    Any Idea?

  42. Oscar Garcia says:

    what happend with incoming emails when a mailbox is in migration progress and it status is copyingMessages

    • They will continue being delivered, and they will be synchronized as part of the migration process. The only interruption is during the final cutover of the mailbox to the new database. Messages in transit at that time will simply queue for a few moments while the final cutover completes.

      Mailbox moves do not cause missed or significantly delayed messages for the user.

  43. Marco says:

    Hey, we are going to migrate some users from our customers site to our site (IT Outsourcing). As there is only a 100 Mbit Link between the two site we were wondering, whether it makes more sense to complete the migration batch manually or automatically.
    There are some mailboxes that are 40-70 Gigabytes.
    Does anyone know if we complete the mailbox migration manually (let’s say on monday monring) how long the user’s will be disconnected from their mailbox? Will the be disconnected for the whole completion process? Thank you a lot


    • The user is disconnected during the completion process, which is typically the last 5% of the mailbox data.

      Manually completing the request gives you more control over the specific timing, which sounds like what you want.

      • Marco says:

        Thanks for your fast answer 🙂

        One additional question: Are the 5 % the Delta , meaning the data arrived between the start of the migration, or are the 5% fixed? That would mean that in case of the 70 GB Mailbox, there have to be 7 GB transferred and during that time the mailbox wont be accessible. Thanks a lot in advance. Marco

        • The move request will get to 95% then stop and wait for completion. How it works out which 5% to leave to last, I don’t know. Safe to assume that anything that arrives while the move request is in a suspended state will add to that 5%. And yes, the bigger the mailbox the longer the completion task will take.

  44. Gerardt says:

    I am experiencing some strange behavior when attempting to move Ex2013 mailboxes to an Ex2016 database. After creating the batch the move goes to a syncing state then after a short period the batch completes showing 0 mailboxes moved with all of the mailboxes remaining in the Ex2013 database. I even attempted moving a single mailbox and am met with the same result. However, be advised I was able to move the Arbitration mailboxes (5 in total) to an Ex2016 database successfully with no errors. What is going on?

    • You might be seeing the mailboxes silently dropping out of the batch. Look at the individual move requests instead, that should give you the reason why an individual move failed. Most common issue is an existing move request for that mailbox that hasn’t been cleared.

  45. ikram says:

    One of my Client want to achieve active – active solution between branches, for example a user in H.O Exchange want to login with same credential in Branch office. What is the desirable procedure to achieve this solution.

  46. Luke says:

    Any idea how to “push” out a new server URL to mobile devices? when I migrated from EX07 to EX13 it automatically updated the URL on all devices when the mailboxes were moved however when I migrated the mailboxes from EX13 to EX16 it did not update the URL. I also don’t see any such setting for mobile device policy’s.
    (for the interim I set the (A) record of the EX13 server on our public and private DNS to the EX16 server’s IP but that’s not a permanent solution in my opinion.

      • Luke says:

        It was a poorly planned co-existence / “hybrid” migration from on-site EX07 to off-site EX13 immediately followed by off-site EX13 to on-site EX16 once the 07 server had been reloaded. Mainly a new namespace was used to provide additional detail during troubleshooting other DNS issues inherited on the network as this was all spread out over nearly a month while the users with office 07 were updated to 13. The steps were go from:
        ex07@ mail.
        ex13@ stage.
        ex16@ mail.

        the server address on mobile devices automatically updated to stage. when users were migrated from 07 to 13 but did not change back to mail. as those same users were moved from 13 to 16 (however desktops did successfully update).

        • Luke says:

          we ended up redirecting the second URL both internally and externally to the new server until we were able to manually update each device after decommissioning the exchange 2013 server. Hopefully future migrations are a single step within the same namespace!

  47. Allan says:

    Hi Paul,
    I’ve just installed an Exchange 2016 server in a mixed environment with an Exchange 2013. When I have moved all mailboxes etc. from my current Exchange 2013 to Exchange 2016, then how do I prevent Outlook clients from connecting to the old Exchange?

  48. Syed Nazar says:

    Hi Paul,

    I am moving the old database to a New one but as a finial result it shows me Completed with Errors.

    the Error : Waiting for mailbox changes to replicate.

    Can you please advise for the issue please

    • Hector says:

      Yeah! Most users I migrated, was during business hours. Clients just had to restart the Outlook client when the migration finished.

  49. Peter Henry says:

    I have a rather strange question. I’m in the process of migrating to Exchange 2013 from 2007. I wanted to move my mailbox first yet when I went to move it in the EAC, I forgot to specify the destination database. I let it go on for a little while thinking it would fail on its own but it didn’t so I stopped the batch. I then tried to do a different batch moving my mailbox but that completed without doing anything. I’m now thinking that I need to go in and delete the original batch before I can move my mailbox successfully but am a little wary about doing that. Do I simply have to delete the stopped batch and then create another one or will deleting it cause problems for my mailbox?


  50. Rob says:

    Hi Paul
    I’m about to start some Mailbox Moves to reclaim WhiteSpace.
    Is it possible to create migration batches for sub sets of lists of users?
    Say for example I have 100 Mailboxes on 1 DB, and I want to move them off in batches of 10?

  51. Jeff B. says:

    I am migrating from ex07 to ex13 and I have successfully migrated about 10 mailboxes. But, the last one I tried to move is stuck in the ‘Queued’ state. When I run ‘Get-MailboxDatabaseCopyStatus’ I get ContentIndexState=’FailedAndSuspended’ and ErrorMessage = ‘Reseeding of the index is required’. I went ahead and stopped the two search services and deleted the folder, but I don’t think it is rebuilding the index.

    Any ideas on what to do next?

  52. david hood says:

    If I am batching up say 100 users in a move from 2007 to 2013, and the 2013 environment has multiple servers with MRS available – is there a way to specify which server actually “does the move”? Or is it just picked at random?

  53. Stephan says:

    Hi Paul,

    I have got a question for you regarding mailbox sizes. I am about to migrate mailboxes from a Exchange 2010 environment to Exchange 2016. The prohibit send limit is set to 10 gb for all databases. However we have a select number of users were we have set the prohibit send quota to 15 gb.

    Im struggling to find whether the custom quotas will be transferred during the migration or will I have to take other measures?

    • The custom quotas will be preserved in the move. If you’re ever unsure about this type of thing then the best thing to do is to create a test case and run through the scenario to see the outcome.

Leave a Reply

Your email address will not be published. Required fields are marked *