Database Migration Service is a service that makes it easier for you to migrate your data to Google Cloud. Database Migration Service helps you lift and shift your MySQL workloads into Cloud SQL.
Which sources are supported?
Amazon RDS 5.6, 5.7, 8.0
Self-managed MySQL (on premises or on any cloud VM that you fully control) 5.5, 5.6, 5.7, 8.0
Cloud SQL for MySQL 5.6, 5.7, 8.0, 8.4
Amazon Aurora 5.6, 5.7, 8.0
Microsoft Azure Database for MySQL 5.7, 8.0
For MySQL 8.0 sources, Database Migration Service also supports the following minor versions:
8.0.18, 8.0.26, 8.0.27, 8.0.28, 8.0.30, 8.0.31, 8.0.32, 8.0.33, 8.0.34, 8.0.35, 8.0.36, 8.0.37,
8.0.39, 8.0.40, 8.0.41, 8.0.42.
Which destinations are supported?
Cloud SQL for MySQL 5.6 and 5.7
Cloud SQL for MySQL 8.0 including the following minor versions:
8.0.18, 8.0.26, 8.0.27, 8.0.28, 8.0.30, 8.0.31, 8.0.32, 8.0.33, 8.0.34, 8.0.35, 8.0.36, 8.0.37,
8.0.39, 8.0.40, 8.0.41, 8.0.42.
Cloud SQL for MySQL 8.4 with certain limitations. For example, migrations that use physical
backup files are not supported for MySQL 8.4 destinations. For more information, seeKnown limitations.
Is there cross-version support?
Database Migration Service supports MySQL-to-Cloud SQL migrations across any major version, where the destination is the same version or one version higher than the source database. For example, migrate a MySQL 5.6 source database to either a Cloud SQL for MySQL 5.6 or 5.7 destination.
Which data, schema, and metadata components are migrated?
Database Migration Service migrates schema, data, and metadata from the source to the destination. All of the
following data, schema, and metadata components are migrated as part of the database migration:Data Migration
All tables from all databases/schemas.
Schema Migration
Naming
Primary key
Data type
Ordinal position
Default value
Nullability
Auto-increment attributes
Secondary indexes
Metadata Migration
Stored Procedures
Functions
Triggers
Views
Foreign key constraints
Which changes are replicated during continuous migration?
DML and DDL changes (that is, changes to all data, schema, and metadata listed above) are updated during
continuous migrations.
What isn't migrated?
When migrating a MySQL database, the MySQL system databases which contain information about users
and privileges aren't migrated. This means that user account/login information must be managed in
the destination Cloud SQL instance directly.
To add users to the Cloud SQL destination instance, navigate to the instance and add users
from theUserstab, or add them from the MySQL client.
To create a migration in Database Migration Service, connectivity must be established
between the source and the Cloud SQL destination instance. There are a variety of methods supported.
Choose the one that works best for the specific workload.
Networking method
Description
Pros
Cons
IP allowlist
Works by configuring the source database server to accept connections from the public IP of
the Cloud SQL instance. If you choose this method, then Database Migration Service guides you through the setup
process during the migration creation.
Easy to configure.
Recommended for short-lived migration scenarios (POC or small database migrations).
Firewall configuration may require assistance from IT.
Exposes the source database to a public IP.
The connection isn't encrypted by default. Requires enabling SSL on the source database
to encrypt the connection.
Reverse SSH tunnel through cloud-hosted VM
Establishes connectivity from the destination to the source through a secure reverse SSH tunnel.
Requires a bastion host VM in the Google Cloud project and a machine
(for example, a laptop on the network) that has connectivity to the source. Database Migration Service collects the
required information at migration creation time, and auto-generates the script for setting it up.
Easy to configure.
Doesn't require any custom firewall configuration.
Recommended for short-lived migration scenarios (POC or small database migrations).
You own and manage the Bastion VM.
May incur additional costs.
VPC peering
This method works by configuring the VPCs to communicate with one another. This is only
applicable if both the source and destination are hosted in Google Cloud. Recommended for
long-running or high-volume migrations.
Google Cloud solution.
Easy to configure.
High-bandwidth
Only available when the source is hosted in Google Cloud.
VPN
Sets up an IPSec VPN tunnel connecting the internal network and Google Cloud VPC through a
secure connection over the public Internet. Use Google Cloud VPN or any VPN solution that is
set up for the internal network.
Robust and scalable connectivity solution.
Medium-high bandwidth.
Security built-in.
Offered as Google Cloud solutions or from other 3rd parties.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Hard to understand","hardToUnderstand","thumb-down"],["Incorrect information or sample code","incorrectInformationOrSampleCode","thumb-down"],["Missing the information/samples I need","missingTheInformationSamplesINeed","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-09-04 UTC."],[[["\u003cp\u003eDatabase Migration Service simplifies the process of migrating MySQL workloads to Google Cloud's Cloud SQL.\u003c/p\u003e\n"],["\u003cp\u003eThe service supports a variety of MySQL sources, including Amazon RDS, self-managed MySQL, Cloud SQL for MySQL, Amazon Aurora, and Microsoft Azure Database for MySQL, with specific version compatibility.\u003c/p\u003e\n"],["\u003cp\u003eDestinations for migration are primarily Cloud SQL for MySQL, including versions 5.6, 5.7, 8.0, and 8.4 with certain limitations on 8.4, and cross-version migrations are supported if the destination is the same or one major version higher than the source.\u003c/p\u003e\n"],["\u003cp\u003eDuring the migration, the service transfers all data, schema components like primary keys, data types, and metadata components, like stored procedures and triggers, and can replicate both DDL and DML changes.\u003c/p\u003e\n"],["\u003cp\u003eVarious networking methods are supported for establishing connectivity between the source and destination, including IP allowlisting, reverse SSH tunnels, VPC peering, VPN, and Cloud Interconnect, each with different pros and cons depending on the user requirements.\u003c/p\u003e\n"]]],[],null,["# Database Migration Service for MySQL FAQ\n\n\u003cbr /\u003e\n\n\u003cbr /\u003e\n\nMySQL \\| [PostgreSQL](/database-migration/docs/postgres/faq \"View this page for the PostgreSQL version of Database Migration Service.\") \\| [PostgreSQL to AlloyDB](/database-migration/docs/postgresql-to-alloydb/faq \"View this page for the PostgreSQL to AlloyDB version of Database Migration Service.\")\n\n\u003cbr /\u003e\n\n\u003cbr /\u003e\n\n\u003cbr /\u003e\n\n\u003cbr /\u003e\n\n\u003cbr /\u003e\n\n\u003cbr /\u003e\n\n\u003cbr /\u003e\n\n- [What is Database Migration Service?](#whatisdms)\n- [Which sources are supported?](#sources)\n- [Which destinations are supported?](#destinations)\n- [Is there cross-version support?](#crossversion)\n- [Which data, schema, and metadata components are migrated?](#migrated)\n- [Which changes are replicated during continuous migration?](#replicated)\n- [What isn't migrated?](#notmigrated)\n- [Which networking methods are used?](#networking)\n- [What are the known limitations?](#limitations)\n\n\u003cbr /\u003e\n\nWhat is Database Migration Service?\n: Database Migration Service is a service that makes it easier for you to migrate your data to Google Cloud. Database Migration Service helps you lift and shift your MySQL workloads into Cloud SQL.\n\nWhich sources are supported?\n:\n\n\n - Amazon RDS 5.6, 5.7, 8.0\n - Self-managed MySQL (on premises or on any cloud VM that you fully control) 5.5, 5.6, 5.7, 8.0\n - Cloud SQL for MySQL 5.6, 5.7, 8.0, 8.4\n - Amazon Aurora 5.6, 5.7, 8.0\n - Microsoft Azure Database for MySQL 5.7, 8.0\n\n\n For MySQL 8.0 sources, Database Migration Service also supports the following minor versions:\n 8.0.18, 8.0.26, 8.0.27, 8.0.28, 8.0.30, 8.0.31, 8.0.32, 8.0.33, 8.0.34, 8.0.35, 8.0.36, 8.0.37,\n 8.0.39, 8.0.40, 8.0.41, 8.0.42.\n\n\nWhich destinations are supported?\n:\n\n\n - Cloud SQL for MySQL 5.6 and 5.7\n - Cloud SQL for MySQL 8.0 including the following minor versions: 8.0.18, 8.0.26, 8.0.27, 8.0.28, 8.0.30, 8.0.31, 8.0.32, 8.0.33, 8.0.34, 8.0.35, 8.0.36, 8.0.37, 8.0.39, 8.0.40, 8.0.41, 8.0.42.\n - Cloud SQL for MySQL 8.4 with certain limitations. For example, migrations that use physical backup files are not supported for MySQL 8.4 destinations. For more information, see [Known limitations](/database-migration/docs/mysql/known-limitations).\n\n\nIs there cross-version support?\n:\n\n Database Migration Service supports MySQL-to-Cloud SQL migrations across any major version, where the destination is the same version or one version higher than the source database. For example, migrate a MySQL 5.6 source database to either a Cloud SQL for MySQL 5.6 or 5.7 destination.\n\nWhich data, schema, and metadata components are migrated?\n\n: Database Migration Service migrates schema, data, and metadata from the source to the destination. All of the following data, schema, and metadata components are migrated as part of the database migration: \u003cbr /\u003e\n\n Data Migration\n\n - All tables from all databases/schemas.\n\n Schema Migration\n\n \u003c!-- --\u003e\n\n - Naming\n - Primary key\n - Data type\n - Ordinal position\n - Default value\n - Nullability\n - Auto-increment attributes\n - Secondary indexes\n\n Metadata Migration\n\n \u003c!-- --\u003e\n\n - Stored Procedures\n - Functions\n - Triggers\n - Views\n - Foreign key constraints\n\nWhich changes are replicated during continuous migration?\n:\n\n DML and DDL changes (that is, changes to all data, schema, and metadata listed above) are updated during\n continuous migrations.\n\nWhat isn't migrated?\n\n: When migrating a MySQL database, the MySQL system databases which contain information about users\n and privileges aren't migrated. This means that user account/login information must be managed in\n the destination Cloud SQL instance directly.\n\n To add users to the Cloud SQL destination instance, navigate to the instance and add users\n from the **Users** tab, or add them from the MySQL client.\n\n [Learn more about creating\n and managing MySQL users](https://cloud.google.com/sql/docs/mysql/create-manage-users).\n\nWhich networking methods are used?\n: To create a migration in Database Migration Service, connectivity must be established\n between the source and the Cloud SQL destination instance. There are a variety of methods supported.\n Choose the one that works best for the specific workload.\n\n\nWhat are the known limitations?\n: See [Known limitations](/database-migration/docs/mysql/known-limitations)."]]