Migrating Data to Azure
The course is part of this learning path
Once you've decided to take advantage of cloud technology, resources, and scale, and have set up an Azure infrastructure, there is the small matter of transferring your existing data to the cloud. A migration is successful when the target production system is up and running correctly with the minimum impact on the business' operation. Achieving this requires knowing what data issues you will have in the new environment and minimizing system downtime while the data is transferred. This course looks at strategies and tools to achieve an optimal migration.
- Understand the underlying concepts of migrating relational databases to Azure
- Explore the factors in determining the optimal migration scenario as well as those affecting the physical movement of data from on-premises to Azure
- Learn the different tools and services to aid in discovery, assessment, and migration
- Learn how to migrate an on-premises SQL Server DB to Azure SQL Managed Instance using the Data Migration Service
- Use Data Migration Assistant to migrate on-Premises SQL Server databases to Azure SQL DB
- Migrate MySQL to Azure MySQL using MySQL Workbench
- Migrate a MySQL database to Azure SQL Server using SQL Server Migration Assistant
This course is ideal for anyone looking to migrate their existing on-premise database environment to an Azure SQL database solution.
To get the most out of this course, you should be familiar with general database and cloud concepts.
Azure Migrate is the name of an umbrella service for a collection of tools to aid in the assessment and migration of on-premises infrastructure, software, and data to the Azure cloud. In terms of infrastructure, you can assess physical and virtual servers by downloading an appliance in the form of a virtual machine image, either VMWare or Hyper-V, that will collect system and usage data about your on-premises environment. If, for whatever reason, spinning up a dedicated assessment VM isn't appropriate; there is a spreadsheet template you can download and fill in with server details and then upload to Azure Migrate. In either case, the assessment service will recommend virtual machines with vCPUs, memory, and disk characteristics that will best meet your needs. Along with the specifications, the assessment will display estimated costs for each virtual machine.
When it comes to assessing SQL Server databases for migration to Azure, there are currently two tools available within the portal. Microsoft Data Migration Assistant, DMA, is a free download to run on-premise, and UnifyCloud's CloudPilot is a third-party paid-for tool.
The Data Migration Assistant, as the name implies, also migrates SQL Server databases to Azure. Run the assistant on-premises to identify server instance and database compatibility issues with a target Azure SQL database type. While it is possible to assess AWS RDS for SQL Server as a source, the Data Migration Assistant doesn't support migrating it.
Data Migration Service is an online tool accessed through the Azure portal that will migrate SQL Server to Azure SQL databases of all types and non-SQL Server databases to their Azure counterparts.
Microsoft Data Experimentation Assistant is another downloadable tool that enables you to record an SQL Server workload as XEvents or a Trace and then replay the workload on a target server to assess how your workloads are likely to perform in the destination environment.
Of course, there is a lot of SQL code that resides outside of databases in application software. This is especially true with the rise in popularity of data access layers like Entity Framework that have encouraged embedding SQL scripts inside client applications instead of using stored procedures. Data Access Migration Toolkit is a Visual Studio Code extension that can analyze code for SQL statements producing a report outlining potential migration issues. Saving the report in JSON format enables you to upload it to the Data Migration Assistant incorporating the application layer into your database assessment.
To close the loop, Azure Migrate includes tools and services to help with the data migration process. While, in theory, you could migrate a database server using the server migration functionality to a VM, it would be fraught and, in all practicality, not worth the effort or tears.
In most cases, you have a few options, depending on the source and target combination regarding migration tools. This table summarizes the options available to migrate on-premises databases to Azure.
SQL Server as a source has the most migration options, both cloud-based and on-premise. This is particularly true when migrating to SQL Server hosted on a virtual machine – which is essentially the same as any server to server migration.
Microsoft SQL Server Migration Assistant, another downloadable migration tool, comes in several versions, each dedicated to migrating a specific database engine. There are versions for migrating from Access, DB2, MySql, Oracle, and SAP ASE.
Currently, there are no specific Azure MariaDB migration tools, but as MariaDB is very closely related to MySql, using MySql tools, either Azure-based or third-party have a more than even chance of working.
Azure Database Migration Guides is a portal to extensive documentation, describing step-by-step migration procedures for a multitude of scenarios.
Hallam is a software architect with over 20 years experience across a wide range of industries. He began his software career as a Delphi/Interbase disciple but changed his allegiance to Microsoft with its deep and broad ecosystem. While Hallam has designed and crafted custom software utilizing web, mobile and desktop technologies, good quality reliable data is the key to a successful solution. The challenge of quickly turning data into useful information for digestion by humans and machines has led Hallam to specialize in database design and process automation. Showing customers how leverage new technology to change and improve their business processes is one of the key drivers keeping Hallam coming back to the keyboard.