Select the right tools for migration to Azure Database for MySQL
APPLIES TO: Azure Database for MySQL - Single Server Azure Database for MySQL - Flexible Server
Migrations are multi-step projects that can be tough to complete. Migrating database servers across platforms involves more than data and schema migration. There are also several other components, such as server configuration parameters, networking, access control rules, etc., to move. These are required to ensure that the functionality of the database server in the new target platform mimics the source.
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.
In general, migrations can be categorized as either offline or online.
With an offline migration, the source server is taken offline, and a dump and restores of the databases are performed on the target server.
With an online migration (migration with minimal downtime), the source server allows updates, and the migration solution will take care of replicating the ongoing changes between the source and target server along with the initial dump and restore on the target.
If your application can afford some downtime, offline migrations are always the preferred choice, as they're simple and easy to execute. However, an online migration is the best choice if your application can only afford minimal downtime. Migrations of most OLTP systems, such as payment processing and e-commerce, fall into this category.
Decision table
There are both offline and online migration scenarios to help you select the right tools for migrating to Azure Database for MySQL - Flexible Server.
Offline
To help you select the right tools for migrating to Azure Database for MySQL, consider the detail in the following table for offline migrations.
Migration Scenario | Tool(s) | Details | More information |
---|---|---|---|
Single to Flexible Server (Azure portal) | Database Migration Service (classic) and the Azure portal | Tutorial: DMS (classic) with the Azure portal (offline) | Suitable for < 1TB workloads; cross-region, cross-storage type and cross-version migrations. |
Single to Flexible Server (Azure CLI) | Azure Database for MySQL Import CLI | Tutorial: Azure Database for MySQL Import | Recommended - Suitable for all sizes of workloads, extremely performant for > 500 GB workloads. |
MySQL databases (>= 1 TB) to Azure Database for MySQL | Dump and Restore using MyDumper/MyLoader + High Compute VM | Migrate large databases to Azure Database for MySQL using mydumper/myloader | Best Practices for migrating large databases to Azure Database for MySQL |
Online
To help you select the right tools for migrating to Azure Database for MySQL - Flexible Server, consider the detail in the following table for online migrations.
Migration Scenario | Tool(s) | Details | More information |
---|---|---|---|
Single to Flexible Server (Azure portal) | Database Migration Service (classic) | Tutorial: DMS (classic) with the Azure portal (online) | Recommended |
Single to Flexible Server | Mydumper/Myloader with Data-in replication | Migrate Azure Database for MySQL – Single Server to Azure Database for MySQL – Flexible Server with open-source tools | N/A |
Azure Database for MySQL Flexible Server Data-in replication | Mydumper/Myloader with Data-in replication | Configure Data-in replication - Azure Database for MySQL Flexible Server | N/A |
Next step
Feedback
https://aka.ms/ContentUserFeedback.
Coming soon: Throughout 2024 we will be phasing out GitHub Issues as the feedback mechanism for content and replacing it with a new feedback system. For more information see:Submit and view feedback for