This topic describes how to migrate data between RDS instances of different Alibaba Cloud accounts by using Data Transmission Service (DTS).

Prerequisites

The available storage space of the destination instance is larger than the total size of the data in the source instance.

Billing

Migration type Task configuration fee Internet traffic fee
Schema migration and full data migration Free of charge. Charged only when data is migrated from Alibaba Cloud over the Internet. For more information, see Pricing.
Incremental data migration Charged. For more information, see Pricing.

Permissions required for database accounts

Instance Schema migration Full data migration Incremental data migration
Source RDS instance The read and write permissions The read and write permissions The read and write permissions
Destination RDS instance The read and write permissions The read and write permissions The read and write permissions

Before you begin

Use Resource Access Management (RAM) to authorize the Alibaba Cloud account that owns the source instance. Specify the Alibaba Cloud account that owns the destination instance as a trusted account. The settings ensure that the destination account can access cloud resources of the Alibaba Cloud account that owns the source instance. For more information, see Configure RAM authorization for cross-account data migration and synchronization.

Procedure

  1. Log on to the DTS console by using the Alibaba Cloud account that owns the destination instance.
  2. In the left-side navigation pane, click Data Migration.
  3. At the top of the Migration Tasks page, select the region where the destination RDS instance resides. Select a region
  4. In the upper-right corner of the page, click Create Migration Task.
  5. In the Source Database section, set Instance Type to RDS Instance, and click RDS Instances of Other Apsara Stack Accounts next to the RDS Instance ID field. Cross-account configuration
  6. Configure the source and destination databases. Configure the source and destination databases
    Parameter Description
    Task Name DTS automatically generates a task name. We recommend that you specify an informative name for easy identification. You do not need to use a unique task name.
    Source Database
    • Instance Type: Select RDS Instance.
      Note If you have selected RDS Instance as the instance type, you can skip this step.
    • Instance Region: Select the region where the source RDS instance resides.
      Note You can select different regions for the source and destination RDS instances.
    • Apsara Stack Tenant Account ID of RDS Instance: Enter the ID of the Alibaba Cloud account that owns the source instance.
      Note To obtain the ID of the Alibaba Cloud account that owns the source instance, you must log on to the Account Management console with this account. The account ID is displayed on the Security Settings page.
    • Role Name: Enter the role name configured for the Alibaba Cloud account that owns the source instance. For more information, see Configure RAM authorization for cross-account data migration and synchronization.
    • RDS Instance ID: Select the ID of the source RDS instance.
      Note If an alert message appears when you select an RDS instance ID, modify the parameter values as prompted. For more information, see FAQ.
    • Database Account: Enter the database account of the source RDS instance. For information about the permissions that are required for the account, see Permissions required for database accounts.
    • Database Password: Enter the password of the database account.
    Destination Database
    • Instance Type: Select RDS Instance.
      Note You can select different regions for the source and destination RDS instances.
    • Instance Region: Select the region where the destination RDS instance resides.
    • RDS instance ID: Select the ID of the destination RDS instance.
    • Database Account: Enter the database account of the destination RDS instance. For information about the permissions that are required for the account, see Permissions required for database accounts.
    • Database Password: Enter the password of the database account.
    • Encryption: Select Non-encrypted or SSL-encrypted. In this example, select Non-encrypted.
      Note If you want to select SSL-encrypted, you must enable SSL encryption for the RDS instance before you configure the data migration task. For more information, see Configure SSL encryption on an ApsaraDB RDS for MySQL instance.
  7. In the lower-right corner of the page, click Set Whitelist and Next.
    Note DTS adds the CIDR blocks of DTS servers to the whitelists of the source and destination RDS instances. This ensures that DTS servers can connect to the source and destination RDS instances.
  8. Select the migration types and the objects to be migrated. Select the migration types and the objects to be migrated
    Setting Description
    Select the migration types
    • To perform only full data migration, select Schema Migration and Full Data Migration.
    • To migrate data with minimal downtime, select Schema Migration, Full Data Migration, and Incremental Data Migration.
    Note If Incremental Data Migration is not selected, do not write data to the source database during full data migration. This ensures data consistency between the source and destination databases.
    Select the objects to be migrated

    Select one or more objects from the Available section and click the Right arrow icon to move the objects to the Selected section.

    Note
    • You can select columns, tables, or databases as the objects to be migrated. If you select tables or columns as the objects to be migrated, DTS does not migrate other objects such as views, triggers, and stored procedures to the destination database.
    • By default, after an object is migrated to the destination database, the name of the object remains unchanged. You can use the object name mapping feature to change the names of the objects that are migrated to the destination database. For more information, see Object name mapping.
    • If you use the object name mapping feature on an object, other objects that are dependent on the object may fail to be migrated.
    Specify whether to rename object names You can use the object name mapping feature to change the names of the objects that are migrated to the destination instance. For more information, see Object name mapping.
    Specify the retry time for failed connections to the source or destination database By default, if DTS fails to connect to the source or destination database, DTS retries within the next 12 hours. You can specify the retry time based on your needs. If DTS reconnects to the source and destination databases within the specified time, DTS resumes the data migration task. Otherwise, the data migration task fails.
    Note When DTS retries a connection, you are charged for the DTS instance. We recommend that you specify the retry time based on your business needs. You can also release the DTS instance at your earliest opportunity after the source and destination instances are released.
    Specify whether to copy temporary tables to the destination database when DMS performs online DDL operations on the source table If you use Data Management (DMS) to perform online DDL operations on the source database, you can specify whether to migrate temporary tables generated by online DDL operations.
    • Yes: DTS migrates the data of temporary tables generated by online DDL operations.
      Note If online DDL operations generate a large amount of data, the migration task will be delayed.
    • No: DTS does not migrate the data of temporary tables generated by online DDL operations. Only the original DDL data of the source database is migrated.
      Note If you select No, the tables in the destination database may be locked.
  9. Click Precheck.
    Note
    • A precheck is performed before the migration task starts. The migration task only starts after the precheck succeeds.
    • If the precheck fails, click the Note icon next to each failed check item to view the related details. Fix the issues as instructed and run the precheck again.
  10. After the task passes the precheck, click Next.
  11. In the Confirm Settings dialog box, specify the Channel Specification and select Data Transmission Service (Pay-As-You-Go) Service Terms.
  12. Click Buy and Start to start the data migration task.
    • Full data migration

      We recommend that you do not manually stop the task during full data migration. Otherwise, the data migrated to the destination instance will be incomplete. You can wait until the data migration task automatically stops.

    • Incremental data migration

      The task does not automatically stop during incremental data migration. You must manually stop the task.

      Note We recommend that you select an appropriate time to manually stop the data migration task. For example, you can stop the task during off-peak hours or before you switch your workloads to the destination instance.
      1. Wait until Incremental Data Migration and The migration task is not delayed appear in the progress bar of the migration task. Then, stop writing data to the source database for a few minutes. The delay time of incremental data migration may be displayed in the progress bar.
      2. After the status of incremental data migration changes to The migration task is not delayed again, manually stop the migration task. The migration task is not delayed

FAQ

If an alert message appears when you set the RDS Instance ID parameter for the source database, you can solve the issue as described in following table.

Alert message Solution
Alert message_Role does not exist Check whether the ID of the Alibaba Cloud account that owns the source instance and the role name configured for the account are valid.
Note To obtain the ID of the Alibaba Cloud account that owns the source instance, you must log on to the Account Management console with this account. The account ID is displayed on the Security Settings page.
Alert message_No permissions Make sure that the following operations are performed: 1. Configure RAM authorization for the Alibaba Cloud account that owns the source instance. 2. Specify the Alibaba Cloud account that owns the destination instance as a trusted account. The settings ensure that the destination account can access cloud resources of the Alibaba Cloud account that owns the source instance. For more information, see Configure RAM authorization for cross-account data migration and synchronization.