Migrating Data Through a VPC
A VPC network is suitable for migrations of cloud databases.
You can create a migration task that will walk you through each step of the process. After a migration task is created, you can manage it on the DRS console.
This section uses the migration from MySQL to RDS MySQL as an example to describe how to configure a migration task on the DRS console on a VPC network.
You can create up to five real-time migration tasks.
Prerequisites
- You have logged in to the DRS console.
- Your account balance is greater than or equal to ¥0.
- The migration requirements are met. For details, see Real-Time Migration.
- The constraints on DRS usage are met. For details, see Before You Start.
Procedure
- On the Online Migration Management page, click Create Synchronization Task.
- On the Select Scenario page, select Source Database Type and Destination Database Type and click Next.
- In this example, the source database is On-premises databases, Databases on the current cloud, Self-built databases on ECS, or Databases on other cloud. The destination database is Databases on the current cloud.
- You cannot use DRS to migrate from an on-premises database to another on-premises database.
- On the Create Replication Instance page, configure task details, recipients, description, and the replication instance, and click Next. Figure 1 Migration task information
Table 1 Task and recipient description Parameter
Description
Task Name
The task name consists of 4 to 50 characters, starts with a letter, and can contain only letters (case-insensitive), digits, hyphens (-), and underscores (_).
Send Notifications
This parameter is optional. If this function is enabled, DRS will send notifications to specified recipients based on the mobile numbers and email addresses you provided. If an exception occurs during migration, the system will send a notification to the specified recipients.
NOTE:Recipients must confirm the subscription on the SMN console within 48 hours of receiving an SMS message or email. Otherwise, they cannot receive notifications from DRS.
Synchronization Delay Threshold
During an incremental migration, a synchronization delay indicates a time difference (in seconds) of synchronization between the source and destination database.
If the synchronization delay exceeds the threshold you specify, DRS will send alarms to the specified recipients. The value ranges from 1 to 3,600. To avoid repeated alarms caused by the fluctuation of delay, an alarm is sent only after the delay has exceeded the threshold for six minutes.
NOTE:- In the early stages of an incremental migration, there is more delay because more data is waiting to be synchronized. In this situation, no notifications will be sent.
- Before setting the delay threshold, you need to enter the recipient's mobile number or email address.
Description
The description consists of a maximum of 256 characters and cannot contain the following special characters: !=<>'&"
Figure 2 Replication instance information
Table 2 Replication instance settings Parameter
Description
Data Flow
Select To the cloud.
The destination database must be an RDS database on the current cloud.
Source DB Engine
Select MySQL.
Destination DB Engine
Select MySQL.
Network Type
Select VPC.
Available options: VPC, VPN or Direct Connect, and Public network. By default, the value is Public network.
- VPC is suitable for migrations of cloud databases.
- Public network is suitable for migrations from on-premises or external cloud databases to the destination databases bound with an EIP.
- VPN is suitable for migrations from on-premises databases to cloud databases or between cloud databases across regions.
- Direct Connect is suitable for migrations from on-premises databases to cloud databases or between cloud databases across regions.
Destination DB Instance
Select the DB instance you created.
Replication Instance Subnet
The subnet where the replication instance resides. You can also click View Subnet to go to the network console to view the subnet where the instance resides.
By default, the DRS instance and the destination DB instance are in the same subnet. You need to select the subnet where the DRS instance resides, and there are available IP addresses for the subnet. To ensure that the replication instance is successfully created, only subnets with DHCP enabled are displayed.
Destination Database Access
- Read-only
During migration, the destination database is read-only. After the migration is complete, it restores to the read/write status. This option ensures the integrity and success rate of data migration.
- Read/Write
During migration, the destination database can be queried or modified. Data may be modified when operations are performed or applications are connected. It should be noted that background processes can often generate or modify data, which may result in data conflicts, task faults, and upload failures. Do not select this option if you do not fully understand the risks.
NOTE:Only MySQL databases support the setting of the destination database access.
Migration Type
- Full: This migration type is suitable for scenarios where service interruption is acceptable. All objects and data in non-system databases are migrated to the destination database at one time. The objects include tables, views, and stored procedures. NOTE:
If you perform a full migration, you are advised to stop operations on the source database. Otherwise, data generated in the source database during the migration will not be synchronized to the destination database.
- Full+Incremental: This migration type allows you to migrate data without interrupting services. After a full migration initializes the destination database, an incremental migration initiates and parses logs to ensure data consistency between the source and destination databases.
NOTE:If you select the Full+Incremental migration type, data generated during the full migration will be synchronized to the destination database with zero downtime, ensuring that both the source and destination databases remain accessible.
Tags
This setting is optional. Adding tags helps you better identify and manage your tasks. Each task can have up to 10 tags.
After a task is created, you can view its tag details on the Tags tab. For detailed operations, see Tag Management.
- On the Configure Source and Destination Databases page, wait until the replication instance is created, and then configure the source and destination database details. You need to click Test Connection in the Source Database and Destination Database areas to check that both the source and destination databases are connected. Then, select the check box before the agreement and click Next.
Source databases are classified into two types: self-built databases on ECSs and RDS DB instances. Configure parameters based on different scenarios.
- Scenario 1: Self-built databases on ECSs - source database configuration Figure 3 Self-build on ECS - source database information
Table 3 Self-build on ECS - source database information Parameter
Description
Source Database Type
Select Self-built on ECS.
VPC
A dedicated virtual network in which the source database is located. It isolates networks for different services. You can select an existing VPC or create a VPC. For details on how to create a VPC, see the Creating a VPC section in the Virtual Private Cloud User Guide.
Subnet
A subnet provides dedicated network resources that are logically isolated from other networks, improving network security. Subnets can take effect only in AZs. You need to enable the DHCP for subnets where you plan to create the source database, and cannot disable the DHCP during creation.
IP Address or Domain Name
The IP address or domain name of the source database.
Port
The port of the source database.
Range: 1 - 65535
Database Username
The username for accessing the source database.
Database Password
The password for the database username.
SSL Connection
SSL encrypts the connections between the source and destination databases. If SSL is enabled, upload the SSL CA root certificate.
NOTE:- The maximum size of a single certificate file that can be uploaded is 500 KB.
- If the SSL certificate is not used, your data may be at risk.
The IP address, domain name, username, and password of the source database are encrypted and stored in DRS and will be cleared after the task is deleted.
- Scenario 2: RDS DB instance - source database configuration Figure 4 RDS DB instance - source database information
Table 4 RDS DB instance - source database information Parameter
Description
Source Database Type
Select RDS DB Instance.
DB Instance Name
Select the RDS DB instance to be migrated as the source DB instance.
Database Username
The username for accessing the source database.
Database Password
The password for the database username.
- Destination database configuration Figure 5 Destination database information
Table 5 Destination database information Parameter
Description
DB Instance Name
The RDS DB instance you selected when creating the migration task and cannot be changed.
Database Username
The username for accessing the destination database.
Database Password
The password for the database username.
Migrate Definer to User
- Yes
The Definers of all source database objects will be migrated to the user. Other users do not have permissions on database objects unless these users are authorized. For details on authorization, see How Do I Maintain the Original Service User Permission System After Definer Is Forcibly Converted During MySQL Migration?
- No
The Definers of all source database objects will not be changed. You need to migrate all accounts and permissions of the source database in the next step.
The database username and password are encrypted and stored in the system and will be cleared after the task is deleted.
- Yes
- Scenario 1: Self-built databases on ECSs - source database configuration
- On the Set Task page, select the accounts and objects to be migrated, and click Next. Figure 6 Migration type
Table 6 Migration types and objects Parameter
Description
Take Snapshot
If you perform a full migration, you can take a snapshot for your databases.
- No
This option applies to exports for which no data is written to the source database. If data is modified during a full migration, the exported data is point in time inconsistent. The stability and performance of a migration without a snapshot taken is better than that of a migration with a snapshot taken.
- Yes
A snapshot with consistent data at the point in time is generated during service running. Data changes during migration are not shown in the exported data.
NOTE:- Snapshot reads use MySQL backup lock to lock global tables and automatically unlock them within 3s after consistent reads are enabled. To prevent full migration failures, you are advised to take a snapshot when the source database is idle and not perform DML or DDL operations during snapshot migration.
- Only MySQL full migration tasks support snapshot mode.
- Do not perform DDL operations during migration in snapshot mode. Otherwise, full migration will fail.
Flow Control
You can choose whether to control the flow.
- Yes
You can limit the bandwidth allocated to data replication at any time or during specific time ranges. The default value is All day. A maximum of three time ranges can be set, and they cannot overlap.
The flow rate must be set based on the service scenario and cannot exceed 9999 Mbit/s.
Figure 7 Flow control
- No If migration bandwidth is not limited, read performance for the source database may be impacted.NOTE:
- Flow control mode takes effect during a full migration only.
- You can also change the flow control mode after creating a task. For details, see Modifying the Flow Control Mode.
Migrate Account
During a database migration, accounts need to be migrated separately.
There are accounts that can be migrated completely, accounts whose permissions need to be reduced, and accounts that cannot be migrated. You can choose whether to migrate the accounts based on your service requirements. If you select Yes, you can select the accounts to be migrated as required.- Yes
If you choose to migrate accounts, see section Migrating Accounts in the Data Replication Service User Guide to migrate database users, permissions, and passwords.
- No
During migration, accounts, permissions, and passwords are not migrated.
Migrate Object
All database objects can be migrated. After the objects are migrated to the destination DB instance, the object names will remain the same as those in the source database and cannot be modified.
You can migrate all objects or specified objects based on your service requirements.
- All: All objects in the source database are migrated to the destination database.
- Self-defined: Only self-defined objects are migrated to the destination database. If the source database is changed, click
in the upper right corner before selecting migration objects to ensure that the objects to be selected are from the changed source database.
NOTE:- If you choose not to migrate all of the databases, the migration may fail because the objects, such as stored procedures and views, in the database to be migrated may have dependencies on other objects that are not migrated. To ensure a successful migration, you are advised to migrate all of the databases.
- When you select an object, the spaces before and after the object name are not displayed. If there are two or more consecutive spaces in the middle of the object name, only one space is displayed.
- No
- On the Check Task page, check the migration task.
- If any check fails, review the cause and rectify the fault. After the fault is rectified, click Check Again.
For details about how to handle check failures, see the Checking Whether the Source Database Is Connected section in the Data Replication Service User Guide.
Figure 8 Task Check
- If the check is complete and the check success rate is 100%, click Next.
You can proceed to the next step only when all check items are successful. If any alarms are generated, view and confirm the alarm details first before proceeding to the next step.
- If any check fails, review the cause and rectify the fault. After the fault is rectified, click Check Again.
- Compare the source and target parameters. By comparing common and performance parameters for the source databases against those of the destination databases, you can help ensure that services will not change after a migration is completed. You can determine whether to use this function based on service requirements. It mainly ensures that services are not affected after a migration is completed.
- This process is optional, so you can click Next to skip the comparison.
- Compare common parameters:
If the parameter values in the list are inconsistent, you can click Save Change to change the destination database values to match those of the source database.
Figure 9 Modifying common parameters
Performance parameter values in both the source and destination can be the same or different.
- There is a value that is consistent, but you still want to change it in the destination, locate the parameter, enter the value in the Change To column, and click Save Change in the upper left corner.
- If you want to change a destination database value to match the source same:
- Click Use Source Database Value.
DRS automatically updates the destination database value to match the source.
Figure 10 One-click modification
You can also manually enter parameter values.
- Click Save Change.
The system changes the parameter values based on your settings for the destination database values. After the modification, the comparison results are automatically updated.
Figure 11 Performance parameters
Some parameters in the destination database require a restart before the changes can take effect. The system will display these as being inconsistent. In addition, restart the destination database before the migration task is started or after the migration task is complete. To minimize the impact of this restart on your services, it is recommended that you schedule a specific time to restart the destination database after the migration is complete.
For details about parameter comparison, see Parameters for Comparison in the Data Replication Service User Guide.
- Click Next.
- Click Use Source Database Value.
- On the Confirm Task page, specify Start Time, confirm that the configured information is correct and click Submit to submit the task.
Set Start Time to Start upon task creation or Start at a specified time based on site requirements.
After a migration task is started, the performance of the source and destination databases may be affected. You are advised to start a migration task during off-peak hours.
- After the task is submitted, view and manage it on the Online Migration Management page.
- You can view the task status. For more information about task status, see Task Status.
- You can click
in the upper-right corner to view the latest task status.
Last Article: Migrating Data Through a VPN (or Direct Connect)
Next Article: Migrating On-Premises Oracle Database to RDS MySQL
Did this article solve your problem?
Thank you for your score!Your feedback would help us improve the website.