• facebook
  • twitter
  • linkedin

Read time 5 minutes

Summary: This article discusses the process of migrating mailboxes from a Hosted Exchange environment to Office 365 (Exchange Online). It outlines steps to prepare both the source and destination environments, including granting permissions and adjusting settings. The article also explains how to initiate the migration using the Exchange Admin Center and provides tips for monitoring the migration progress. It highlights the importance of a reliable third-party Exchange Migration application like Kernel Migrator for Exchange for a smoother and error-free migration.

In the Hosted Exchange environment, both on-premises Exchange Server and Exchange Online coexist within the business organization. However, they are managed by a trusted third-party service provider responsible for ensuring the availability and security of cloud-based accounts. Should you wish to migrate specific mailboxes from Hosted Exchange to your Office 365 (Exchange Online) account, a well-prepared approach is essential. This involves readying both the source and destination accounts and executing an IMAP migration in manageable batches.

The service provider assumes the responsibility for all the necessary preparations and the seamless execution of the entire migration process. In this article, we will guide you through the steps to prepare these platforms using cmdlets and demonstrate how to carry out the Hosted Exchange to Office 365 migration using the Exchange Admin Center.

Prepare the source hosted Exchange environment

Here are the detailed steps –

  1. Create a new account for the migration and also grant the full access rights to each mailbox for the respective account. Run the PowerShell cmdlet.
    Get-Mailbox -ResultSize unlimited | Add-MailboxPermission -AccessRights FullAccess -User <the user account name>
  2. Allow the impersonation right to the user. It is very important to have the impersonation rights for a large size migration. Run the cmdlet.
    New-ManagementRoleAssignement -Role ApplicationImpersonation -User <username>
  3. Export the mailboxes to a CSV file.
    Note: If you are an administrator, then you do not need to provide the password for every mailbox. But a non-administrator needs to provide both mailboxes and password in the CSV.

Prepare the destination environment

Here are the steps –

  1. Setup the user account to receive the mailboxes.
  2. Create a new admin account which will have all the permission related to the mailbox.
    NOTE: You need to create a new admin account because if the user is a part of the Domain Administrator, Schema Administrator, or Enterprise Administrator groups, then they cannot have any administrative rights for migration. There is a default security setting in Exchange Server which prevents such admin accounts from migration even if they have the required permission.
  3. Create a new Exchange PowerShell session for the migration.
    $s = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri https://ps.outlook.com/powershell -Credential $cred -Authentication Basic -AllowRedirection
  4. Grant the permission for migration with the following cmdlet:
    Get-Mailbox -ResultSize Unlimited | Add-MailboxPermission -AccessRights FullAccess -Automapping $false -User <username>
  5. Disable the throttling for the Administrator account.
  6. Verify that Administrator account is accessible in EWS.
  7. During migration, if the attachment along with the messages is larger than 10 MB, then you need to change some limit settings in the destination mailboxes – increase maximum message size limit, maximum accepted content length, maximum receive message size, and maximum accepted request length.

Start the Hosted Exchange to Office 365 Migration

The Exchange Online administrator has the capability to initiate email migrations using the Email Migration wizard, conveniently accessible within the Exchange Admin Center. This empowered administrator can efficiently manage multiple migration batches, maintaining precise control over the migration process. Moreover, the administrator can simultaneously execute multiple migration batches, ensuring that each batch operates independently, without compromising overall migration efficiency.

Here is the process to create the migration batches using the E-mail migration wizard:

  1. Sign in to Office 365 with administrator credentials (https://portal.office.com)
  2. Go to Admin option, and then click the Exchange option.
  3. Click the Migration option, and go to select the New (+), and choose the option Onboarding.
  4. Select the first option of Remote Move among the option (the remaining option is Staged Migration, Cutover Migration, IMAP Migration, etc.
  5. Next step involves selecting the users to account by clicking the Add (+) and select the users.
  6. Input the hosted Exchange Administrator account. The username option should fulfill like this ‘domain name\Administrator.’
  7. Create the Migration Endpoint and then create the Migration batch with a new name.
  8. Input the destination domain and target credentials.
  9. Start the batch migration. After a successful migration, you can check the mailboxes are present at the on-premises Exchange Server mailboxes.

While running the Migration batch, if you want to have a deep knowledge about the migration status of a large sized batch, then you should go to Exchange Management shell and run some cmdlets to get the status.

  • Get-MigrationBatch -Identity ‘BatchName’: The cmdlet will bring the complete details of the migration batch with the status of the mailboxes.
  • Get-MigrationConfig -Partition: With the help of the cmdlet, you will be able to easily get the batch settings that you have configured for the batch.
  • Get-MigrationStatistics: Run the cmdlet with the suitable parameters like Diagnostic, DiagnosticInfo, DomainController, Partition, and you will get the required details and the health of the ongoing batch migration quickly.
  • Get-MigrationUser -Identity ‘User-name’: Run the command to get the migration status of the given user. It will show whether the user was migrated in the batch migration or not.
  • Get-MigrationUserStatistics – Identity ‘User-Name’: To get the deep understanding of the migration user data, you should run the command along with other parameters and get the result.
  • Get-MigrationBatch: The simple cmdlet will bring the various details of the migration batch like total number of mailboxes being migrated, number of successfully completed migration, migration error, status of migration batch, date and time of the migration and when it was completed.

The manual migration process entails numerous adjustments at both the source and destination ends, followed by the manual initiation of the migration batch within the Exchange Admin Center. Alternatively, you can opt for a batch migration of Exchange mailboxes facilitated by a CSV file. This approach demands a considerable amount of time to execute, and a solitary error or oversight could potentially derail the entire migration endeavor, possibly leading to data corruption. To safeguard against such unfavorable circumstances, it is advisable to employ a reputable third-party Exchange Migration application from a trusted vendor with professional expertise.

Kernel Migrator for Exchange

Kernel Migrator for Exchange helps you to connect with Exchange accounts from each platform (on-premises, online, and hosted) and migrate all mailboxes with their features, information, and metadata. The user interface of software reduces the challenges related to the transfer of data and provides a detailed report for each item.

Final words

This article explains how to migrate from Hosted Exchange to Office 365 (Exchange Online) using a well-prepared approach. It covers steps for preparing both source and destination environments, along with details on initiating the migration batches. The process is complex and can be error-prone, so using a trusted third-party Exchange Migration application is recommended for a smoother and more secure migration.