Migration between two Office 365 tenants
I. Pre-migration activities
Below you will find the list of key points to be considered:
Step 1: (Optional) Add a custom domain to target Office 365
If you want to migrate to your own (custom) domain, you need to make sure that it's registered and verified in your target Office 365. If necessary, add your custom domain to the target Office 365 tenant and verify it.
Skip this step if you already have your own domain registered in the target Office 365 or you would like to migrate to the initial domain (e.g. yourcompany.onmicrosoft.com) that was assigned to you by Microsoft when you created your target Office 365 tenant – you can always add a custom domain after the migration.
Step 2: Assign licenses in Office 365
Make sure that Office 365 licenses are assigned to all user accounts that will be used as the target mailboxes. You can set the program to create the mailboxes and assign the Office 365 licenses automatically. Learn more
Alternatively, check out this article to learn about different ways of creating Office 365 mailboxes in bulk.
If you have already created new mailboxes in your target Office 365 tenant, it is possible to hide them from the GAL (e.g. to prevent your users from sending emails to them until the migration is finished). The mailboxes will be still visible in CodeTwo Office 365 Migration and the migration will proceed as usual.
Step 3: Install and activate CodeTwo Office 365 Migration
The program needs to be installed on any machine with connection to both the source and the target Office 365 environment.
The following additional components will also be installed, as they are required for CodeTwo Office 365 Migration to run properly:
- .NET Framework 4.6.1 or higher (required on all systems),
- Windows PowerShell 3.0 (required on all systems).
The installation wizard will guide you through the whole installation process. After the installation is finished, remember to activate the program.
II. Migration process
If you would like to perform a migration by using a CSV file containing source and target mailbox pairs, follow the steps provided in this article. Once you import the CSV file, go to step 4 below to continue configuring your migration job.
Step 1: Connect to the source server
Make sure that the software user who runs the migration is a local administrator.
When you start the program, you will see the Dashboard tab. Click Create a new migration job link on the How to start card. Select the source server type: Office 365. The Create Office 365 migration job wizard will open. Set the name of the job and click Next to proceed to the Source mailboxes step. If this is your first migration job, you will need to configure a connection to the Office 365 tenant that will be used as the source of your migration. Click Add new source connection in the Source server drop-down menu and a wizard will open. You need to complete these steps:
- Office 365 cloud (legacy setting) – select Office 365 global (Microsoft retired Office 365 Germany / Microsoft Cloud Deutschland on October 29, 2021).
- Application registration – decide how you want CodeTwo Office 365 Migration to be registered the Azure AD of your source Office 365 tenant: automatically by the program (global admin account credentials will be required) or manually by yourself. If you select the second option, you will be asked to provide the application registration details in the next step.
- Application details – enter the necessary application information. Additionally, you need to enter an email address of any user from your source Office 365 tenant. This account is used to gain access to the tenant's information, such as name, domain, etc.
- Configuration – this process registers CodeTwo Office 365 Migration in your Azure AD (if you have selected the Automatic registration option in the Application registration step) and configures the connection to the source Office 365 tenant.
If the configuration is successful, click Finish.
If any errors appear, see Troubleshooting
Step 2: Select mailboxes you want to migrate and define target connection
After successfully configuring the source connection, you will get back to the migration job wizard.
The Source mailboxes step now allows you to include or exclude mailboxes by using multiple filters. By default, the program includes All users along with the Public Folders as it is a most common scenario. Choose the mailboxes you want to migrate and proceed to the next step (Target mailboxes).
Now, set up a new target server connection by choosing Add new target connection from the Target server drop-down menu. A simple wizard will open:
- Office 365 cloud (legacy setting) – choose Office 365 global, as you can no longer migrate your data to the Office 365 Germany cloud (Microsoft retired Microsoft Cloud Deutschland on October 29, 2021).
- Application registration – decide how you want CodeTwo Office 365 Migration to be registered the Azure AD of your target Office 365 tenant: automatically by the program (global admin account credentials will be required) or manually by yourself. If you select the second option, you will be asked to provide the application registration details in the next step.
- Application details – enter the necessary application information. Additionally, you need to enter an email address of any user from your target Office 365 tenant (this account is used to gain access to the tenant's information, such as name, domain, etc.). If you are migrating public folders as well, we recommend to use an email address of an admin account, as this account needs to have (or be assigned) the Owner rights to the root public folder and any subfolders, to which you will be migrating your source data.
- Configuration – this process registers CodeTwo Office 365 Migration in your Azure AD (if you have selected the Automatic registration option in the Application registration step) and configures the connection to the target Office 365 tenant.
Once the configuration ends successfully, you will see green check marks. If any errors appear, see Troubleshooting.
After your connection is established, click Finish and proceed to the next step (Match mailboxes).
Step 3: Match source and target mailboxes
Matching the source mailboxes with the target mailboxes can be done automatically, by using the built-in automatch feature, or manually. We suggest that you start off by matching mailboxes automatically and modify the automatch settings if not all the mailboxes were matched in the first run. Use the manual option only if there are any mailboxes left unmatched after several automatch runs with a different configuration of the automatch mechanism.
To match mailboxes automatically, click the Match mailboxes button. In the window that opens, click Automatch > Automatch all mailboxes or select the mailboxes you want to match and click Automatch > Automatch selected mailboxes. Configure the automatching mechanism and click Automatch to start the matching process. If not all the mailboxes were matched, modify the automatch mechanism and run it again. Repeat this as many times as necessary.
If any source mailbox is left unmatched despite several attempts to match it automatically with different automatch settings, match it manually.
If you are migrating public folders, make sure that the account used in the Target server connection wizard is the Owner of the root public folder and all subfolders to which you will be migrating your data. Learn more
Note that you can set the program to create target users and mailboxes in your Office 365 tenant, whether you’re matching mailboxes manually or automatically. Learn more
When you have matched all your mailboxes, save your configuration and close the matching window. Continue with the migration job wizard. The next steps will allow you to configure additional options.
Step 4: Customize all necessary aspects of the migration job
You can configure the following additional options:
- Scheduler - this step allows you to set the job to be automatically started in the desired time periods, so you do not have to control it manually.
- Time filter - this filter is used to exclude items that are older or newer than a particular date.
- Folder filter - in this step you can completely exclude specific folders from the migration process.
- Advanced settings - this step lets you define how many mailboxes should be migrated at the same time and set the maximum size of items to be migrated.
Step 5: Start the migration
Review your migration job in the Job summary step. Click Finish to close the wizard.
Move on to the JOBS tab and click Start on the toolbar to begin the migration. Once you start the migration, all items from the source mailboxes will be migrated to their corresponding target mailboxes.
To speed up the migration, you should temporarily increase the EWS throttling policy limits in Exchange Online. Find out how to do so in this article.
The migration processing time depends on several different factors, e.g. the number of mailboxes and items, the speed of internet connection, etc. See this article for details.
Step 6: Check if the number of items migrated in the target mailboxes matches the number of items in the source server mailboxes
If you notice any missing items in the target mailbox, restart the migration by using the Run delta migration option.
Please be aware that the program does not migrate some specific folders at all. Those are e.g. Sync Issues or the ones created while putting a mailbox on litigation hold.
If any problems appear during the migration process, they will be visible on the JOBS tab in the Migration status column or on the Job bad news card. Details of the problems can be checked in the diagnostic files.
Step 7: Check if there are any new items in the source mailbox after migration
Once the migration is finished and you have noticed that some new items appeared in the migrated source mailbox, just restart the migration by using the Run delta migration option. Please keep in mind that this feature migrates only new items, not the modified ones. Delta migration can also be used to resolve issues with any items that failed to migrate on the first attempt.
III. Post-migration cleanup
Step 1: Disconnect the domain from the source tenant
If you plan to move your custom domain from the old Office 365 tenant to the new one, you first need to remove it from the former. To do so:
- Log in to your Microsoft 365 admin center (Office 365 admin center).
- Go to Settings > Domains.
- Select the domain you want to disconnect.
- In the window that opens, click Remove. If you are notified of any dependencies regarding the domain you intend to remove, simply confirm that you want to disconnect the domain.
Step 2: Change DNS records (MX, Autodiscover)
You need to change your MX records to enable mail flow to the new server. Additionally, you should also set up Autodiscover record to facilitate connecting migrated mailboxes with a mail client (e.g. Outlook). To change these DNS records manually, follow the steps below:
- Log in to your Microsoft 365 admin center (Office 365 admin center).
- Go to Settings > Domains, select your domain and click DNS Management.
- Choose I’ll manage my own DNS records and click Next.
- Select Exchange checkbox and click Next.
- On this page, find the details regarding MX records and CNAME records (Autodiscover) that you need to use at your domain registrar. For specific instructions on how to configure DNS records in your domain registrar, visit this Microsoft page.
- Once the DNS records have been configured, click Verify back in Office 365. Please note that it may take several hours for the changes to propagate.
If any new items appear in a source mailbox while the MX records are being changed, it is possible to migrate these items after the records migration process is completed. It can be done via the Administration Panel of the program by choosing the Run delta migration option.