All Products
Search
Document Center

Data Transmission Service:Migrate data between AnalyticDB for MySQL V3.0 clusters

Last Updated:Mar 28, 2026

Use Data Transmission Service (DTS) to migrate data between two AnalyticDB for MySQL V3.0 clusters. DTS supports schema migration, full data migration, and incremental data migration. Choose the combination that fits your scenario.

Choose a migration type

Migration typeWhat it doesWhen to use
Schema migration + full data migrationMigrates table schemas and all existing data. The task stops automatically when complete.One-time migration with acceptable downtime. Stop writes to the source before migrating.
Schema migration + full data migration + incremental data migrationMigrates schemas and data, then continuously replicates changes (DML and DDL). The task runs until you stop it.Production migrations where the source must stay online. Minimizes downtime.
Important

Each incremental data migration task supports only one table. To migrate incremental data from multiple tables, create a separate task for each table.

Prerequisites

Before you begin, make sure you have:

  • A destination AnalyticDB for MySQL V3.0 cluster with more available storage than the total data size in the source cluster. See Create a cluster.

  • If you plan to migrate incremental data: change data capture (CDC) and binary logging enabled for the tables to be migrated in the source cluster. See Use DTS to subscribe to AnalyticDB for MySQL binary logs.

  • A source cluster running engine version 3.2.1.0 or later (required for incremental migration). If your cluster is on an earlier version, update the minor version first.

  • Tables to be migrated with a custom primary key or UNIQUE constraint, with all fields unique. Tables with auto-generated primary indexes in the __adb_auto_id__ format cannot be migrated.

  • Database accounts with the required permissions:

    DatabaseRequired permissions
    Source AnalyticDB for MySQL V3.0Read permissions on objects to be migrated. See Create a database account.
    Destination AnalyticDB for MySQL V3.0Read and write permissions on the destination database.

Limits

  • Bandwidth: The server hosting the source database must have sufficient outbound bandwidth. Insufficient bandwidth slows down the migration.

  • DDL operations: During schema migration and full data migration, do not perform DDL operations to change the schemas of databases or tables. Otherwise, the migration task fails.

  • Foreign keys: DTS does not migrate foreign keys during schema migration. During full and incremental migration, DTS temporarily disables foreign key constraint checks and cascade operations at the session level. If you run cascade update or delete operations on the source during migration, data inconsistency may occur.

  • Primary key requirement: Specify a custom primary key in the destination database, or configure Primary Key Column in the Configurations for Databases, Tables, and Columns step. Otherwise, migration may fail.

  • Data verification: Not supported.

  • Binary log expiry: If a migration task is suspended for more than one day, the source cluster's binary log may expire and the task cannot be resumed. Do not disable binary logging while a task is running. If you do, create a new migration task.

  • Disk space: If disk usage on any node in the destination cluster exceeds 80%, the task is delayed and returns an error. Estimate storage requirements before starting.

  • Destination cluster backup: Migration fails while the destination cluster is being backed up.

  • Fragmentation: Full data migration causes fragmentation in destination tables due to concurrent INSERT operations. After migration, the destination tablespace is larger than the source.

  • Performance impact: DTS reads from the source and writes to the destination during migration, which increases load on both databases. Run migrations during off-peak hours when CPU usage is below 30%.

  • Task recovery: If a task fails, DTS support will attempt to restore it within 8 hours. The restoration may restart the task or adjust DTS instance parameters (database parameters are not modified). For the parameters that may be modified, see Modify instance parameters.

Billing

Migration typeInstance feeInternet traffic fee
Schema migration and full data migrationFreeCharged only when Access Method is set to Public IP Address. See Billing overview.
Incremental data migrationCharged. See Billing overview.

SQL operations supported for incremental migration

Operation typeSupported statements
DML (Data Manipulation Language)INSERT, UPDATE, DELETE. UPDATE is automatically converted to REPLACE INTO on write. If UPDATE targets the primary key, it is converted to DELETE + INSERT.
DDL (Data Definition Language)ADD COLUMN, DROP COLUMN

Create a migration task

Step 1: Go to the Data Migration page

DTS console

  1. Log on to the DTS console

  2. In the left-side navigation pane, click Data Migration.

  3. In the upper-left corner, select the region where the migration instance will reside.

DMS console

Note

Steps may vary based on the DMS console mode and layout. See Simple mode and Customize the layout and style of the DMS console.

  1. Log on to the DMS console

  2. In the top navigation bar, go to Data + AI > DTS (DTS) > Data Migration.

  3. From the drop-down list next to Data Migration Tasks, select the region.

Step 2: Create a task

Click Create Task to open the task configuration page.

Step 3: Configure source and destination databases

Task settings

ParameterDescription
Task NameA name for the DTS task. DTS generates a name automatically. Use a descriptive name to make the task easy to identify. Names do not need to be unique.

Source database

ParameterDescription
Select Existing ConnectionIf the source instance is registered with DTS, select it from the list — DTS fills in the remaining parameters automatically. See Manage database connections. If not, configure the parameters below. In the DMS console, select the instance from Select a DMS database instance.
Database TypeSelect AnalyticDB for MySQL 3.0.
Access MethodSelect Alibaba Cloud Instance.
Instance RegionSelect the region where the source cluster resides.
Replicate Data Across Alibaba Cloud AccountsSelect No if the source and destination clusters are under the same Alibaba Cloud account.
Instance IDSelect the source AnalyticDB for MySQL V3.0 cluster.
Database AccountThe database account for the source cluster.
Database PasswordThe password for the database account.

Destination database

ParameterDescription
Select Existing ConnectionIf the destination instance is registered with DTS, select it from the list — DTS fills in the remaining parameters automatically. See Manage database connections. If not, configure the parameters below. In the DMS console, select the instance from Select a DMS database instance.
Database TypeSelect AnalyticDB for MySQL 3.0.
Access MethodSelect Alibaba Cloud Instance.
Instance RegionSelect the region where the destination cluster resides.
Instance IDSelect the destination AnalyticDB for MySQL V3.0 cluster.
Database AccountThe database account for the destination cluster.
Database PasswordThe password for the database account.

Step 4: Test connectivity

Click Test Connectivity and Proceed.

Make sure the CIDR blocks of DTS servers are added to the security settings of both clusters. See Add the CIDR blocks of DTS servers. If the test fails, verify that the CIDR blocks are correctly allowlisted, then retry.

Step 5: Configure objects to migrate

On the Configure Objects page, set the migration scope and behavior.

Migration types

ParameterDescription
Migration TypesSelect the migration types based on your scenario. See Choose a migration type. If you skip Schema Migration, create the target database and table manually in the destination cluster and enable object name mapping in Selected Objects. If you skip Incremental Data Migration, stop writes to the source database during migration to prevent data inconsistency.
DDL and DML Operations to Be SynchronizedAvailable when Incremental Data Migration is selected. Select which DDL and DML operations to replicate at the instance level. To configure per-table operations, right-click a table in Selected Objects and select the operations.
Merge TablesAvailable when Incremental Data Migration is not selected. Set to Yes to merge all selected source tables into one destination table — DTS adds a __dts_data_source column to track the source. Default: No. If you set this to Yes and do not want specific tables merged, create a separate migration task for those tables.

Conflict handling

OptionBehavior
Precheck and Report ErrorsChecks for table name conflicts before starting. If a conflict is found, the precheck fails and the task cannot start. To resolve, rename conflicting tables using object name mapping, or rename or delete the destination tables.
Ignore Errors and ProceedSkips the conflict check. During full migration, conflicting records in the destination are kept (source records are not migrated). During incremental migration, conflicting records in the destination are overwritten. If schemas differ, only matching columns are migrated or the task fails. Use with caution.

Object selection

ParameterDescription
Source ObjectsSelect objects from the list and click the arrow icon to add them to Selected Objects. If Incremental Data Migration is selected, only one table can be selected. Otherwise, databases, tables, and columns are all supported. If you select a database: tables with a primary key use the primary key columns as distribution keys; tables without a primary key get an auto-generated auto-increment primary key, which may cause data inconsistency.
Selected ObjectsRight-click an object to rename it, configure WHERE filter conditions (see Specify filter conditions), or select per-table SQL operations for incremental migration. Click the remove icon to deselect an object. Renaming an object may cause dependent objects to fail migration.

Step 6: Configure advanced settings

Click Next: Advanced Settings and configure the parameters below.

ParameterDescription
Dedicated Cluster for Task SchedulingBy default, DTS uses the shared cluster. To improve task stability, purchase and specify a dedicated cluster. See What is a DTS dedicated cluster.
Retry Time for Failed ConnectionsHow long DTS retries after a connection failure. Valid range: 10–1,440 minutes. Default: 720. Set to at least 30 minutes. If reconnection succeeds within this window, the task resumes. Otherwise, the task fails. If multiple tasks share a source or destination database, the most recently set value applies. You are charged during retry periods.
Retry Time for Other IssuesHow long DTS retries after DDL or DML failures. Valid range: 1–1,440 minutes. Default: 10. Set to a value greater than 10 minutes. This value must be less than Retry Time for Failed Connections.
Enable Throttling for Full Data MigrationLimits read/write throughput during full migration to reduce database load. Configure Queries per second (QPS) to the source database, RPS of Full Data Migration, and Data migration speed for full migration (MB/s). Available only when Full Data Migration is selected.
Enable Throttling for Incremental Data MigrationLimits throughput during incremental migration. Configure RPS of Incremental Data Migration and Data migration speed for incremental migration (MB/s). Available only when Incremental Data Migration is selected.
Environment TagAn optional tag to identify the migration instance by environment (for example, production or staging).
Configure ETLEnables the extract, transform, and load (ETL) feature. Select Yes to enter data processing statements. See Configure ETL in a data migration or data synchronization task. Select No to skip.
Monitoring and AlertingSelect Yes to receive alerts when the task fails or migration latency exceeds a threshold. Configure the alert threshold and notification settings. See Configure monitoring and alerting.

Step 7: Configure data verification (optional)

Click Next Step: Data Verification. For details, see Configure a data verification task.

Step 8: Configure destination table fields (optional)

Click Next: Configure Database and Table Fields to set the Type, Primary Key Column, Distribution Key, Partition Key, Partitioning Rules, and Partition Lifecycle for destination tables.

This step is available only when Schema Migration is selected. Set Definition Status to All to view and edit all tables. In Primary Key Column, you can specify multiple columns to form a composite primary key — at least one of these columns must also be set as the Distribution Key and Partition Key. See CREATE TABLE.

Step 9: Run the precheck

Click Next: Save Task Settings and Precheck.

To preview the OpenAPI parameters for this task, hover over the button and click Preview OpenAPI parameters before saving.

DTS runs a precheck before the task starts. If the precheck fails:

  • Click View Details next to the failed item, fix the issue, then click Precheck Again.

  • If an item shows an alert instead of a failure: click Confirm Alert Details > Ignore > OK > Precheck Again to proceed. Ignoring alerts may cause data inconsistency.

Step 10: Purchase an instance and start the task

  1. Wait until Success Rate reaches 100%, then click Next: Purchase Instance.

  2. On the Purchase Instance page, configure the instance:

    ParameterDescription
    Resource GroupThe resource group for the migration instance. Default: default resource group. See What is Resource Management?
    Instance ClassDetermines migration speed. See Instance classes of data migration instances.
  3. Read and select the Data Transmission Service (Pay-as-you-go) Service Terms checkbox.

  4. Click Buy and Start, then click OK in the confirmation dialog.

Verify the task

After the task starts, go to the Data Migration page to monitor progress.

  • Full migration only: The task stops automatically when complete. Status shows Completed.

  • Full + incremental migration: The task runs continuously. Status shows Running. Stop the task manually when you are ready to cut over to the destination cluster.