Data Transfer
Start course

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.

Learning Objectives

  • 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

Intended Audience

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.



No matter the scenario, whether rehosting or re-platforming, physically moving the data is unavoidable. While different software tools and methods make a difference in the speed and time taken for migration, the determining factor is the physical means of data transfer. Data volume is the primary factor when choosing the transfer method. This is followed very closely by the minimum time needed for the data transfer to take place. Another factor to consider is when the data transfer has to happen, that is, are you under time pressure for it to happen in the near future. And, of course, overlaying all of these considerations is cost. As you would expect, all things being equal, the ideal scenario for transferring large amounts of data will cost the most. Let's look at the options available in terms of data transfer speed, lead time, cost, and reliability.

If speed is not an issue, and you have lots of data to migrate, and you want to minimize costs sending a physical copy of your data by snail mail to Microsoft using Azure Databox could be an option. Azure Databox is a Microsoft service where you send an external hard drive with your data to Microsoft, and they load into your online storage for you. This process takes around two weeks at a minimum, so not suitable for live migration to production. Still, if you have massive amounts of data and want to test a new system under production loads, then databox is a relatively cost-effective option.

For most, a virtual network of some description is the best option. Setting up a site-to-site connection is straightforward and quick. You aren't limited to one VPN connection. Add and remove extra connections as required. You can develop and test migration scenarios with one VPN, and when it comes to the live cut-over, employ multiple connections to reduce overall system downtime. When you know the amount of data to be transferred across the wires and the total bandwidth you have, back-of-the-envelope calculations can give you a rough idea of the amount of time the migration will take. 

ExpressRoute is the gold standard in on-premises to Azure connectivity. Not only does it have the greatest bandwidth, but it is stable, very secure, and reliable with built-in redundant circuits. Setting up an ExpressRoute connection does take longer than a VPN, as it involves coordinating with a third-party provider to connect you to the Microsoft backbone. As with most Azure resources, you can scale up ExpressRoute bandwidth, so if you start small at 50Mbps and increase the size of the pipe as required. Unfortunately, you can only scale up and not scale back. If you require a large bandwidth circuit only for migration, you'll need to drop it once the migration is over and re-provision a smaller one. Alternately you can augment an ExpressRoute connection with multiple VPNs.

About the Author
Learning Paths

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.