The following sections will guide you through setting up and launching your migration. Each header is one step, with its component steps below. Follow these steps in order, and read the notes for important information about dependencies or best practices.
Run Verify Credentials
- Open the Project containing items you wish to validate.
- Select the items you wish to validate.
- Click on the Start button in your dashboard.
- Select Verify Credentials from the drop-down list.
- Once complete, the results of the verification will be shown in the Status section.
Send out the final notification that the migration is beginning. Include when the migration will start, expected duration, any usage instructions during migration, and any expected steps or notifications for the post-migration timeline.
If using DeploymentPro, refer to KB005799 for some sample text and screen shots that can be included in this email.
- Select the users
- Click the Start button from the top, and select Pre-Stage Migration
- Under the Migration Scheduling section, from the drop-down list, select 90 days ago
- Click Start Migration.
Depending on your migration strategy, it might be required to remove or add your domain within Office 365. The below guidance will provide information if you are performing a migration while keeping the same domain name.
Remove Domain from Source.Note: This should only be done after the Pre-Stage migration pass has completed. Typically, it is done late on a Friday night. If you need instructions for removing a domain, refer to this document from Microsoft: Remove a domain from Office 365
- If there are several domains in the Source tenant being moved to the new tenant, all of them need to be removed.
- In the admin portal, change the UPN of the admin account to the onmicrosoft.com address. Note: After domain removal, users will not be able to access their email, unless they know and log in with their tenantname.onmicrosoft.com email addresses.
- After removal, wait 30 minutes for domain removal replication to complete.
Verify Domain at Destination.
- Verify the domain in the Destination Office 365 account. We recommend the use of the wizard in Office 365 for this since once the domain is verified with the Text record, it offers to change all the users to the new Default Domain. Note: Since the domain was previously added to the account, all that needs to be done is to click the Verify button. If the domain is unable to be verified, and there is an error saying the domain already exists on another account, contact Microsoft Support at 1-866-291-7726 (US Toll-Free, other numbers are also available), and tell them that the domain needs to be manually deprovisioned from Forefront.
- Confirm that every user has the Destinationdomain.com domain name added to their mailbox. Add if necessary.
- The step above should have added the domain to every user. Download the add_new_domain.ps1 PowerShell script to check for this and add the domain name. This is only necessary if the users do not have the new default domain added to their account.
MX Record Cutover
Change over MX records on the DNS provider's portal. Also, include the AutoDiscover (CName) setting. There are several options for this, based on the size of your project.
Manually set forwards during a migration on a per-user basis, from the individual users' portal. This is only a valid option for a small number of users. Forwards are useful if you are migrating users in batches, and switching some users over to the new Destination before others. Forwards allow for mail coexistence, but not for calendar free/busy coexistence.
- Sign in to your account.
- Click on Settings.
- Locate the Forwarding and POP/IMAP tab.
- Click Add a forwarding address.
- Enter the email address to forward to.
- A confirmation email will be sent to the forward mailbox.
- Validate the confirmation by logging in to the forward mailbox.
- Go back to your account.
- Select the forward mode.
We recommend not saving a copy locally, because when you migrate the mailbox to the destination, you will end up with duplicates.
Manually set forwards during a migration on a per-user basis, from the admin portal. Forwards are useful if you are migrating users in batches, and switching some users over to the new Destination before others. Forwards allow for mail coexistence, but not for calendar free/busy coexistence.
- Sign into your control panel.
- Click on the Organization & users menu.
- Click on the user you wish to provide coexistence for.
- Scroll to the bottom of the User information section.
- Click on the link Add another destination. A new row should have been added.
- Enter the email address of the new mailbox to coexist with. This email address needs to be different than the email address in your source
- Make sure both checkboxes are selected (they already are, by default). There is one in front of the row and another under the column called Change SMTP envelope.
- Unselect the checkbox in front of the row.
- Click on Save Changes.
If you are not cutting over an entire domain/organization at once by changing the MX records, you can perform a phased migration and set up coexistence by setting up forwards on the mailboxes you wish to migrate.
This can be done either through the use of PowerShell scripts, or through your Exchange Management Console.
Note: We do not recommend setting up Exchange email contacts and a DNS Internal Relay for this, since this will not allow for any Delta Migration passes to be made afterwards because the mailbox no longer exists.
1) By PowerShell:
Here is how to do this via PowerShell:
Forward email to internal recipient and DON'T save local copy.
PowerShell command syntax:
Set-Mailbox -Identity <Identity> -ForwardingAddress <Office 365 User Email Address> -DeliverToMailboxAndForward $False
- Example: Set-Mailbox -Identity John -ForwardingAddress Suzan@o365info.com -DeliverToMailboxAndForward $False
- Because you set DeliverToMailboxAndForward to false, a copy of the email will NOT be kept in the on-premises mailbox. When setting up forwards, make sure that you do NOT save a local copy before the forward. If you do save a local copy, then when you perform Delta passes, MigrationWiz will migrate the items that it previously hasn’t migrated (and watermarked). This will cause duplicates at your Destination.
- The email address specified on the 'ForwardingAddress' parameter should exist as a Mail Contact.
2) Through Exchange Management Console:
The first step is to create the forwarding objects in your local Active Directory. These forwarding objects will be hidden from the address book, and will be used purely to forward mail for mailboxes that are migrated. Note that these objects are created but not used until you set the forwarding, so these steps can be done ahead of time.
- Download our script to create forwarding objects to a computer that is joined to the domain.
- Modify the script in a text editor (like Notepad) and change the forwarding domain in the top of the script to the temporary domain in the new environment, for example, company.onmicrosoft.com.
- Run the script. You will know the script is complete when you see a confirmation.
The next step is to set up forwarding for mailboxes prior to migration. Before submitting a mailbox for migration, set the forward by performing the following:
- Launch the Exchange Management Console from the Start Menu.
- Expand the Recipient Configuration note from the navigation tree.
- Click on the Mailbox node from the navigation tree.
- Right-click on the mailbox to set the forward for and click Properties.
- Click on the Mailbox Flow Settings tab.
- Select Delivery Options and click on Properties. Do not select the option "Deliver message to both forwarding address and mailbox". This is important to ensure that Delta passes do not cause duplicates. If you do save a local copy, then when you perform Delta passes, MigrationWiz will migrate the items that it previously hasn't migrated (and watermarked). This will cause duplicates on your Destination.
- Click the checkbox Forward to, then click Browse.
- Select the name of the user that contains the prefix (External Forward) in the display name. This is the forwarding object created previously.
- Click on OK.
- Click on OK.
For the setup, use PowerShell, because it is faster and easier to set up than working through the Office 365 admin portal. If you need information about how to do this through the Office 365 admin portal, contact Microsoft Support.
- Connect to Exchange Online PowerShell.
- Create the Distribution List (DL):
New-DistributionGroup -Name "BtNotMigratedUsers"
- Add All Users to this DL.
- Create the Connector:
$result = New-OutboundConnector -Name "CBRConnector" -ConnectorType OnPremises -SmartHosts "<fill smart host to source environment>" -UseMXRecord $false -IsTransportRuleScoped $true
- -SmartHosts entry needs to be set to the URL or IP Address of the Source environment server.
- On Exchange 2003, 2007, and 2010, this will be the address of the Transport server.
- On Exchange 2013 and 2016, this will be the address of the Mailbox server, not the Transport server.
- If the Source environment is Hosted, you would need to obtain this address from the Hosted Provider.
- If the Source environment is G Suite, you would need to change the -SmartHosts entry to be the following:
- Create Rule:
$result = New-TransportRule -Name "PilotInABoxRule" -SentToMemberOf "BtNotMigratedUsers" -RouteMessageOutboundConnector "CBRConnector"
When a user is fully migrated, remove the user from the DL, and they will receive their email in their own Office 365 mailbox.
- There must be a mail-enabled contact on-premises for each user that has been migrated.
Run Full (Delta) Pass Migration
Select the users – you may either select individual users, or select all users in a project by clicking the checkbox to the left of Source Email.
Click the Start button from the top
Select Full Migration. If you want to delay your migration, then select the checkbox marked "Automatically start the migration at", and enter the date and time to have the migration start. To start a migration immediately, you do not need to select the scheduling option.
Click Start Migration.
Run Retry Errors
Each error logged represents an item that was not migrated. MigrationWiz contains a mode in which you can resubmit the migration to retry failed items. This mode of operation is always free of charge. You may only submit mailboxes in this mode only if they satisfy all of the following conditions:
- The last migration completed successfully.
- The mailbox contains at least one error.
If your mailbox does not satisfy these conditions, you will receive a warning when submitting the migration in this mode and your request will not be fulfilled.
To submit one or more mailboxes in retry mode, perform the following steps:
- Click the Go To My Projects button.
- Select the project that contains the mailboxes that you want to retry.
- Select the mailboxes that have migration errors.
- Click on the Start button.
- Select Retry Errors from the menu.
- Click the Retry Errors button.
When errors are repaired, they will disappear from the error log. Some errors may not disappear if the Source item was not reprocessed (due to filters, for example), has been deleted or moved, or if the item failed again.
Final StepsIf not using DeploymentPro, users must create new Outlook profiles, and set up their signatures again, and reattach any PST files that were attached to their previous profile. 11. Click the pie chart icon in the MigrationWiz dashboard to receive an email containing all the project migration statistics.
Full (Delta) Pass
Select the users > Click the Start button from the top, select Full Migration > Click Start Migration. This migration will complete quickly since most data is migrated during the Pre-Stage migration; Office 365 to Office 365 migrations have high bandwidth available.