In the previous articles, Migrating SQL workloads to Microsoft Azure: Planning the jump and Migrating SQL workloads to Microsoft Azure: Services Selection, we discussed the steps that you should follow when you start thinking loudly that you need to migrate your SQL workload to Azure, by checking your on-prem site and the available services and features in Azure that meet your workload handling requirements. After that, we went through different database services provided by Azure and which one fits a specific workload, in order to make it easy for you to translate the current workload as an Azure service.
In this article, we will go through two free migration assistant tools that can be used to provide guidance steps for the migration process and assess the existing environment for any changes that should be performed before migrating the SQL workload to Microsoft Azure.
Azure Database Migration Guide
When you start drawing your plan to migrate your workload to Microsoft Azure, Azure Database Migration Guide is your first target that provides you with a comprehensive guide for designing and implementing the database workload migration process, where it provides you with all information that is required for the migration process, including all migration assistant tools and programs.
Azure Database Migration Guide can be accessed by copying the https://datamigration.microsoft.com/ address to your Internet browser, and the migration guidance page will be opened, as shown below:
The Azure Database Migration Guide supports a wide range of data sources, as shown in the previous image. This includes migrating from Microsoft SQL Server, Oracle, DB2, MySQL, PostgreSQL, MongoDB, Cassandra, MariaDB, Access, SAP ASE, and Microsoft Azure Table Storage.
In order to identify which migration targets are supported for each data source, click on that data source and choose your migration target for that data source, as below:
For example, you can migrate your SQL Server database to Azure SQL DB, Azure SQL MI, SQL Server on Azure VM, SQL Data Warehouse, or upgrade the current SQL Server instance.
The Azure Database Migration Guide provides us also, in the home page, with a general overview of the database workload migration process. This overview includes the pre-migration steps, such as discovering the current databases in your environment, assessing the workload, and performing the required transformation and conversion steps to meet the target schema. It also provides us with the steps that should be performed during the migration process, such as migrating the source databases to the target, synchronizing between the source and destination copy then disconnecting from the source database. Once the migration is performed, the post-migration tasks that should be performed include performing changes at the application side to connect to the new target database, testing all application functionalities and overall performance while connecting to that target database and try to optimize and fix any faced issues, as shown below:
From the same home page, The Azure Database Migration Guide provides us with the list of Microsoft tools and services that can help us through the different stages of the workload migration to Microsoft Azure. It also provides us with links to the documentation of each tool, in order to guide you on how to use these tools and fix any issue you face while using these tools. These tools include:
- Azure Migrate: that can be used for starting, executing, and tracking the Azure migration process
- Azure Database Migration Service: that can be used to migrate multiple data sources to the Microsoft Azure database services with minimal downtime
- Data Migration Assistant: that can be used for identifying the SQL database compatibility issues of the source databases that may affect the database functionality in the selected migration target data platform
- SQL Server Migration Assistant: that checks the compatibility of the 3rd party source databases, such as DB2, MySQL, Oracle, and SAP ASE, with the target database platform and automate the database migration process
- Database Experimentation Assistant: that helps in checking the target SQL Server version for a specific workload, where it will identify any query or workload that may have a compatibility or performance issue when it is migrated to the target database
- Data Access Migration Toolkit: an extension for the Visual Studio Code tool that helps in analyzing the Java and .NET source codes and check all queries and data access calls
At the bottom of the Azure Database Migration Guide window, Microsoft provides a number of case studies from different customers, showing how they performed the migration process and the benefits gained from that migration, as shown below:
Assume that we need guidance for migrating our on-prem SQL Server instance to Azure SQL Database. From the Azure Database Migration Guide window, click on the Microsoft SQL Server source and choose the Azure SQL Database as a target database platform, as below:
From the opened window, comprehensive step-by-step guide will be displayed, including the steps that should be performed before starting the migration, during the migration and after migrating the database to Microsoft Azure, as shown below:
On the right side of the previous window, you can find a list of the 3rd party tools that can also be used to migrate your SQL workload to Microsoft Azure or the selected destination.
Microsoft Assessment and Planning Toolkit
The Microsoft Assessment and Planning Toolkit is a free tool that can be used to check if the current environment is ready to be migrated to the new upgraded on-prem or cloud environment. It provides us with all required inventory, assessment, and reporting resources that help when planning to migrate your SQL workload to Microsoft Azure. Microsoft Assessment and Planning Toolkit can be used to check the web applications and SQL Server instances that are installed on the current machine where the toolkit is installed or scan for multiple machines and servers that are registered under a specific Active Directory Domain.
The Microsoft Assessment and Planning Toolkit can be downloaded from Microsoft Download center, where it provides you with the ability to download the toolkit installation file, sample documentation, instructions how to use that tool, as shown below:
Once the Microsoft Assessment and Planning Toolkit is downloaded, it can be installed into your machine, using a straight-forward installation wizard, as shown below:
After installing the MAP tool to your machine, launch the tool, and provide a name for the inventory database where all collected information will be stored, as shown below:
Once the inventory database is created, choose the Perform an Inventory option to start the Inventory and Assessment wizard. From the opened wizard, check the box beside the Microsoft Azure Platform Migration option, under the Inventory Scenarios tab, then click Next, as shown below:
From the Discovery Methods, specify the method that will be used to scan for the computers. In our scenario, we will choose to provide the name and credentials to connect to the computer manually, then click Next, as below:
In the All Computers Credentials tab, click the Create button and provide the credentials that will be used to connect to the machines. After providing the credentials, click Save to return to the wizard then Next, as shown below:
Under the Enter Computers Manually tab, click on the Create button, provide the name of the computers that will be discovered, then choose the Use All Computers credentials list option and click Save to return to the main wizard. From the main wizard, click on Next to proceed, as below:
In the Summary page, review all your selections then click Finish to start the scan and assess the process, as below:
Once the scan and assess process is completed, a piece of statistical information will be displayed about the scanned computers, as shown below:
Now, click on the Database tab at the left side of the tool, then choose the SQL Server Discovery option, as below:
Under the opened SQL Server Discovery window, review the inventory data and graph about the discovered computers. From the Options section, click to generate SQL Server and SQL Server Database Details Reports, as shown below:
After generating the reports, open the generated reports and review the assessment information about the discovered servers and databases, and see if there is any change required for the databases and SQL Servers in order to be migrated to Microsoft Azure, as shown below:
Now, click on the Database tab again and choose the Azure VM Readiness to assess the SQL Server VM for the Microsoft Azure migration, as below:
From the opened Azure VM Readiness window, check the report for any action that should be performed on that virtual machine, in order to migrate it to Microsoft Azure. In our scenario, the servers should be patched before migrating it to Azure, as shown below:
In this article, we went through two migration assistant tools that helped in providing guidance steps for the migration process and assessing the existing environment for any changes that should be performed before migrating the SQL workload to Microsoft Azure. Stay tuned for the next article, in which we will discuss other tools that can be used for the SQL workload migration to Azure.