Running the Cloud Migration Tool

Organizations that run their workloads on-premises but are looking to move to the cloud can easily migrate to Business Central online by running the Set up Cloud Migration assisted setup that runs the cloud migration tool.

The cloud migration tool supports migration from specific versions of specific software. For more information, see the following articles:

Use the same assisted setup to set up a connection to the intelligent cloud but still remain on-premises. For the list of on-premises solutions that currently supported for connecting to the intelligent cloud, see Which products and versions are supported for connecting to the intelligent cloud? in the FAQ.

In the following sections, you're working in your Business Central online tenant and connecting it to your on-premises database. Either because you are migrating from on-premises to online, or because you are connecting to the intelligent cloud.

Tip

In migration scenarios, we recommend that you start the migration by running the assisted setup from a company other than the company that you are migrating data to. For example, you can log into the demonstration company, CRONUS, and start the process there. This way, you can make sure that all users are logged out of the original company and the target company.

Best practices

This section provides best practices and recommendations for migrating to the cloud.

  • As a best practice, test this configuration in your sandbox environment before making changes to a production tenant.

    For more information, see Managing Environments.

  • Any existing data in your Business Central tenant will be overwritten with data from your on-premises solution, or source, once the data migration process is run.

    If you do not want data in your Business Central online tenant to be overwritten, do not configure the connection.

  • All users that do not have SUPER permissions will be automatically reassigned to the intelligent cloud user group. This will limit them to read-only access within the Business Central tenant. See more below.

  • If your data source is Business Central on-premises, several stored procedures will be added to the SQL Server instance that you define. These stored procedures are required to migrate data from your SQL Server database to the Azure SQL server associated with your Business Central tenant.

  • Consider reducing the amount of data that you migrate.

    You can migrate the data that you want to take with you to the cloud. But if your Business Central online storage exceeds 80 GB, some administrative tasks are disabled. We recommend that you consider reducing the amount of data that you migrate so that it is less than 30 GB in each migration run. For example, reduce the number of companies that you are migrating data for, or delete outdated data in tables that contain log entries and archived records. Also, review how you can manage database capacity in a Business Central online environment.

    You can specify which companies to include in the migration in the assisted setup wizard, and you can view the migration status of each company in the Cloud Migration Management page.

    If you want to add more companies after the first selection of companies, you can add additional companies in the Cloud Migration Management page in the Business Central online tenant. For more information, see Adding a tenant to an existing runtime service, or updating companies. But use the Capacity section of the Business Central administration center to keep track of how much data you migrate.

    In certain cases, the customer wants to migrate very large amounts of data. In those cases, you must first run the assisted setup once to create a pipeline, and then contact Support to increase the limitations on your Business Central online tenant. For more information, see Escalating support issues to Microsoft. We are continually working on improving and optimizing the migration tool for larger database sizes, and starting with 2020 release wave 2, customers can buy additional environments, for example.

  • Before you set up the cloud migration, make sure that at least one user in the system has SUPER permissions. This is the only user that will be allowed to make changes in the Business Central tenant.

  • Configuring the cloud environment will have no impact on any users or data in your on-premises solution.

To begin configuring the connection, navigate to the assisted setup page and launch the Set up Cloud Migration assisted setup guide.

Tip

If you are using Business Central on-premises, the same setup guide is also available in your on-premises solution. You will automatically be redirected to your Business Central online tenant to continue the configuration process.

The Set up Cloud Migration assisted setup guide

When you choose the Set up Cloud Migration assisted setup, it launches the Data Migration Setup guide, which consists of up to six pages that take you through the process of connecting your solution to the Business Central online tenant.

  1. Welcome and Consent page

    This page provides an overview of what the wizard will do. You must agree to the displayed warning message before you can continue to the next step.

  2. Product selection

    On this page, specify the on-premises solution that you want to replicate data from. All supported sources will appear in the list. If you don't see your product, navigate to the Manage Extensions page, and then verify that the intelligent cloud extension for your on-premises solution is installed.

    To set up migration from the previous version of Business Central, in the Data Migration Setup dialog, choose Dynamics 365 Business Central (Previous Version) as the product.

    Tip

    Use the migration tool to migrate from the latest version of Business Central or the previous version. If your current version is older than the previous version, then you must upgrade your on-premises solution. For more information, see Supported Upgrade Paths to Dynamics 365 Business Central Releases.

  3. SQL Connection

    If the product you selected requires a SQL connection, this page will be presented. Other source applications may require different information to connect to them. This page will display the connection information based on the product that you specified in the previous page. This is defined from the installed extensions for the product you have selected.

    Field Description
    SQL Connection SQL Server, which is your locally installed SQL Server instance, or Azure SQL.
    SQL Connection string You must specify the connection string to your SQL Server, including the name of the server that SQL Server is running on, and the name of the instance, the database, and the relevant user account. For example, Server=MyServer\BCDEMO;Database=BC170;UID=MySQLAccount;PWD=MyPassWord;, if you're migrating from Business Central on-premises, version 17. For more information, see the SQL Server blog. The following snippets illustrate a couple of connection strings with different formats:
    Server={Server Name\Instance Name};Initial Catalog={Database Name};UserID={SQL Authenticated UserName};Password={SQL Authenticated Password};

    Server={Server Name\Instance Name};Database={Database Name};User Id={SQL Server Authenticated UserName};Password={SQL Server Authenticated Password};

    The SQL connection string is passed to Azure Data Factory (ADF), where it is encrypted and delivered to your Self-Hosted Integration Runtime and used to communicate with your SQL Server instance during the data migration process.
    Integration runtime name If your SQL connection is SQL Server, you must specify the runtime service that will be used to replicate the data from the defined source to your Business Central online tenant. The integration runtime must be running on the machine that holds the SQL Server database. If you don't already have a runtime service, leave the field empty, and then choose the Next button. Once you choose Next, a new pipeline will be created in the Azure service. This takes less than a minute to complete, in most cases. If you want to test your SQL string, open the Microsoft Integration Runtime Configuration Manager, and then choose the Diagnostics menu option. From there, you can test to see if the connection is good.

    If you are a hosting partner, you may have multiple tenants running on the same integration runtime service. Each tenant will be isolated in their own data pipeline. To add tenants to an existing integration runtime service, enter the name of the existing integration runtime service into this field. The integration runtime name can be found in the Microsoft Integration Runtime Manager.

    For more information, see Create and configure a self-hosted integration runtime.

    If you left the Integration runtime name field empty, a new page appears from where you can download the self-hosted integration runtime that you must install. Follow the instructions on the page.

  4. Company Selection

    From the list of companies from your on-premises solution, the source of the migration, select the companies you want to migrate data for. If the company does not exist in your Business Central online tenant, it will be automatically created for you.

    Note

    This process may take several minutes depending on the number of companies that need to be created.

  5. Enable & Scheduling Migration

    The final page in the wizard allows you to enable the migration process and create a schedule for when the data migration should occur. These settings are also available within your Business Central tenant on the Cloud Migration Management page. You have the option to schedule migrations daily or weekly.

    Tip

    We recommend that you schedule your data migration for off-peak business hours since it can take many hours to run, depending on the amount of data.

    We also recommend that you make sure that all users are logged out of both the source company and the target company.

Once you have migrated the data that you want to migrate to Business Central online, you end the migration by disabling cloud migration in the Cloud Migration Setup page. This is an important step, because each time someone runs the migration, outstanding documents for vendors and customers, general ledger account numbers, inventory items, and any other changes made in the target company in Business Central online are overwritten. If you are not migrating but using the assisted setup guide to connect to the intelligent cloud, you can adjust the migration schedule.

Note

The amount of time the migration will take to complete depends on the amount of data, your SQL configuration, and your connection speed. Subsequent migrations will complete more quickly because only changed data is migrating.

Adding a tenant to an existing runtime service, or updating companies

There are some scenarios where it will be necessary for you to run the cloud migration setup wizard more than once.

One example is if you want to change the companies you replicate data for. If the companies in your on-premises solution have changed, either added or deleted, or you want to change the companies to migrate, run the assisted setup wizard again. Alternatively, choose the additional companies in the Cloud Migration Management page.

Another example is that if you are a hosting partner and want to add tenants to your existing runtime service.

In both examples, you will be making updates to an existing runtime service. When you get to the point of the wizard where you can specify an existing runtime services name, open the Microsoft Integration Runtime Service Manager and enter the runtime name in the field in the wizard; you will not be allowed to copy/paste. The runtime service will identify that you are making updates to an existing service and will not create a new one.

Complete the steps in the wizard to update the runtime service. If the change was related to adding tenants to an existing service, a new data pipeline will be created for that tenant. Changing your migration schedule or regenerating an Azure Data Factory (ADF) key may be done using the Cloud Migration Management page in your Business Central cloud tenant. For more information, see Managing your Intelligent Cloud environment.

User groups and permission sets

When running as connected with an on-premises solution, the Business Central online tenant will be read-only with few exceptions. Because the on-premises solution is your primary application for running your business, including activities such as data entry, tax reporting, and sending invoices, these tasks must be completed in the on-premises solution. We limit the amount of data that you can enter in your Business Central tenant to data that is not migrated. Otherwise any data that was written to the tenant database would be continuously overwritten during the migration process.

To make setting up this read-only tenant more efficient, we created a new Intelligent Cloud user group and an Intelligent Cloud permission set. Once the cloud migration environment is configured, all users without SUPER permissions will be automatically assigned to the Intelligent Cloud user group. Only users with SUPER permissions will be allowed to make modifications to the system at this point.

Note

Before you configure the a connection from on-premises to Business Central, make sure that at least one user in each company is assigned SUPER permissions.

Users that are reassigned to the Intelligent Cloud user group will have access to read ALL data by default. If you need to further restrict what data a user should be able to read, the SUPER user may create new user groups and permissions sets and assign users accordingly. It is highly recommended to create any new permissions sets from a copy of the Intelligent Cloud permission set and then take away permissions you do not want users to have.

Warning

If you grant insert, modify or delete permissions to any resource in the application that was set to read-only, it could have a negative impact on the data in the Business Central cloud tenant. If this occurs, you may have to clear all your data and rerun a full migration to correct this.

Extensions

It is highly recommended that you test the impact of any extension in a sandbox environment before having it installed in your production Business Central tenant to help avoid any data failures or untended consequences.

See Also

Managing the Migration to the Cloud
Migrating On-Premises Data to Business Central Online
Migrate to Business Central Online from Business Central On-premises
Migrate to Business Central Online from Dynamics GP
Upgrading from Dynamics NAV to Business Central Online
FAQ about connecting to the intelligent cloud
Your Access to the Intelligent Cloud
Managing your intelligent cloud environment