Migration Execution

Based on your source tenant discovery report, you need to prepare a final mapping file to list the mappings of source data and destination location. As you may have a heavy load of content to migrate, we recommend you separate your mappings into multiple waves according to your departments for easy management. Keep communicating with users about the migration status.

1. Configure projects and mappings in Fly

To configure projects and mappings, refer to Create a Project and Create Migration Mappings for details. Use the mapping file of data to be migrated to configure the migration project.

2. Perform regular full migrations

Before running the job, we recommend you verify the mappings to ensure that the mappings are available for migration. Refer to Pre-analyze Mappings for details.

Then you can run a full migration job to migrate the objects based on your configured migration policy. Refer to Run Migrations to Migrate Objects for details.

3. Perform regular incremental migrations

Handle new, updated, and failed data. Refer to Run Migrations to Migrate Objects about how to perform regular incremental migrations.

4. Compare the source and destination storage (optional)

After the migration, you can compare the number and size of files in the source and destination by accessing the following URL:

sitecollectionurl/_layouts/15/storman.aspx

  • If the number of files is different after the migration, check if the files that are not in the destination failed in the migration. If the files are failed to be migrated, check the comments of failed files. After you fix the errors, rerun the migration job. If there are no records for these files, contact Support and provide the screenshots of these files and job ID to analyze the error.

  • If the size of files is different after the migration, for example, the source file size is 10 MB, but the migrated file size is 100 MB, check the actual size of the source and migrated files in the source and destination libraries. Then, refer to the following instructions to resolve this issue:

  • If the actual size of the source file is 10 MB, the actual size of the migrated file is 10 MB, but the migrated file size displayed in the destination Storage Metrics page is 100 MB, it may be an issue of Microsoft.

  • If the actual size of the source file is 100 MB, the actual size of the migrated file is 100 MB, but the source file size displayed in the Storage Metrics page is 10 MB, it may be an issue of Microsoft.

  • If the actual size of the source file is 10 MB but the actual size of the migrated file is 100 MB, it is an issue of Fly. Contact Support and provide the screenshots of version histories of the source and migrated files, and screenshots of the Storage Metrics pages of the source and destination by accessing the following URL to analyze the error:

    sitecollectionurl/_layouts/15/storman.aspx

5. Validate migration results

After the regular full or incremental migrations, note the following:

  • Check the mapping report. If the mapping fails or finishes with exceptions, you can check the error code and comment for the mapping in the Migration error section. You can click the error code to view the details and recommendations of the code in the Troubleshooting Guide, which can assist you in resolving or avoiding the error.

  • Check the item count in the destination.

  • Check the permission in the destination. If permissions failed to be migrated, you can run a Migrate permissions only migration job.

  • New data can be created in the destination.

6. Set the source site to read only

Before executing the final delta/incremental migration, make sure that no data will be changed or created in the source during the migration to enforce the data consistency.

  • To set OneDrive as read only, run the following script using PowerShell:

    #Set Parameters
    
    $AdminCenterURL="https://contoso-admin.sharepoint.com"
    
    $SiteURL = "https://contoso-my.sharepoint.com/personal/admin_contoso_onmicrosoft_com"
    
    #Connect to SharePoint Online
    
    Connect-SPOService -Url $AdminCenterURL -Credential (Get-Credential)
    
    #PowerShell to set onedrive for business site to read only
    
    Set-SPOSite -Identity $SiteURL -LockState ReadOnly
  • To unlock the OneDrive, run the following script using PowerShell:

    #Unlock site from read only mode
    
    Set-SPOSite -Identity $SiteURL -LockState Unlock

7. Perform the final incremental migration for current wave

At the end of the migration project, we recommend you run a final incremental job to ensure all source data are migrated to the destination.

8. Run migrations for all other waves (optional)

This step is only needed if you have separated the migration projects into multiple waves.

9. Perform the final cutover

After the domain name of your source tenant is changed to your destination tenant for go-live, if you want to perform a final incremental migration to migrate the new or modified data to the destination, you must update the domain names of the source and destination user email addresses in project mappings first. Refer to User Guide for details.