Migrating your workloads to Azure Database for MySQL

Posted by

This post has been republished via RSS; it originally appeared at: Microsoft Tech Community - Latest Blogs - .

Migrating your workloads to Azure Database for MySQL

Microsoft has a long history of trying to make software development and administration of IT infrastructure easier overtime. Additionally, Microsoft in the last 10 years has embraced open source broadly.


Microsoft Azure supports virtual machines, platform services, containers, serverless, and various other infrastructure. In this article, I will share some options you can make to deploy your software on MySQL in Azure.


MySQL Iaas VS Paas.jpg


It may help you to look over the relative cost in terms of effort for administering your infrastructure versus physical, virtual on premises, Azure VM, or PaaS for your MySQL choices. The above diagram works for many other products, like SQL Server, or web servers, or other infrastructure as well.


MySQL on Azure VMs. This option falls into the industry category of IaaS. With this service, you can run MySQL Server inside a managed virtual machine on the Azure cloud platform. All recent versions and editions of MySQL can be installed in the virtual machine.


Azure database for MySQL is a Platform Service (PaaS), fully managed MySQL database engine based on the stable version of MySQL community edition. With a managed instance of MySQL on Azure, you can use built-in features viz automated patching, high availability, automated backups, elastic scaling, enterprise grade security, compliance and governance, monitoring and alerting that require extensive configuration when MySQL Server is either on-premises or in an Azure VM.

Azure Database for MySQL, powered by the MySQL community edition, available in two deployment modes:

  • Flexible Server – A fully managed production-ready database service designed for more granular control and flexibility over database management functions and configuration settings. The flexible server architecture allows users to opt for high availability within a single availability zone and across multiple availability zones. The service supports the community version of MySQL 5.7 and 8.0. The service is generally available today in various Azure regions. Flexible servers are best suited for all new developments and migration of production workloads to Azure Database for MySQL service.
  • Single Server is a fully managed database service designed for minimal customization. The single server platform is designed to handle most database management functions such as patching, backups, high availability, and security with minimal user configuration and control. The architecture is optimized for built-in high availability with 99.99% availability in a single availability zone. It supports the community version of MySQL 5.6 (retired), 5.7, and 8.0. The service is generally available today in various Azure regions. Single servers are best-suited only for existing applications already leveraging single server. A Flexible Server would be the recommended deployment option for all new developments or migrations.

I have two customers, who each had in-house developed applications with MySQL as the database engine, chose Azure Database for MySQL to migrate to as they moved from on-premises to Azure. Each customer has over 200 databases hosted on many MySQL servers.

Migration choices for Azure Database for MySQL

For detailed information and use cases about migrating databases to Azure Database for MySQL, refer to the Database Migration Guide. This document provides pointers to help you successfully plan and execute a MySQL migration to Azure.

Microsoft has a great set of learning on our website, with tutorials to get familiar with tools and processes. Here is the learning path for migrating MySQL from on-premises to Azure.

I hope this article helps clear up the choices of MySQL on Azure, as well as giving you information for how to migrate and learn more.


Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.