__tencentdb__
in the source database to record the data comparison information during the migration task.__tencentdb__
system database in the source database will not be deleted after the migration task ends.__tencentdb__
system database uses a single-threaded connection wait mechanism and occupies a very small space, about 0.01%–0.1% of the storage space of the source database; for example, if the source database is 50 GB, __tencentdb__
will be about 5–50 MB. Therefore, it has almost no impact on the performance of the source database and will not preempt resources.CREATE USER 'migration account'@'%' IDENTIFIED BY 'migration password';GRANT RELOAD,LOCK TABLES,REPLICATION CLIENT,REPLICATION SLAVE,SHOW DATABASES,SHOW VIEW,PROCESS ON *.* TO 'migration account'@'%';// If the source database is a TencentDB for MariaDB database, you need to submit a ticket to authorize `RELOAD`; otherwise, you can authorize by referring to the sample code// If the source database is an Alibaba Cloud database, you don't need to grant the `SHOW DATABASES` permission; otherwise, you need to do so. For more information on authorizing an Alibaba Cloud database, visit https://help.aliyun.com/document_detail/96101.html.// If you select to migrate triggers and events, you need grant both the `TRIGGER` and `EVENT` permissions.GRANT ALL PRIVILEGES ON `__tencentdb__`.* TO 'migration account'@'%';GRANT SELECT ON *.* TO 'migration account';
CREATE USER 'migration account'@'%' IDENTIFIED BY 'migration password';GRANT RELOAD,LOCK TABLES,REPLICATION CLIENT,REPLICATION SLAVE,SHOW DATABASES,SHOW VIEW,PROCESS ON *.* TO 'migration account'@'%';// If the source database is a TencentDB for MariaDB database, you need to submit a ticket to authorize `RELOAD`; otherwise, you can authorize by referring to the sample code// If the source database is an Alibaba Cloud database, you don't need to grant the `SHOW DATABASES` permission; otherwise, you need to do so. For more information on authorizing an Alibaba Cloud database, visit https://help.aliyun.com/document_detail/96101.html.// If you select to migrate triggers and events, you need grant both the `TRIGGER` and `EVENT` permissions.GRANT ALL PRIVILEGES ON `__tencentdb__`.* TO 'migration account'@'%';GRANT SELECT ON `mysql`.* TO 'migration account'@'%';GRANT SELECT ON database to be migrated.* TO 'migration account';
information_schema
, sys
, performance_schema
, __cdb_recycle_bin__
, __recycle_bin__
, __tencentdb__
, and mysql
cannot.user1
corresponding to DEFINER
([DEFINER = user1]
) in the source database is the same as the migration account user2
, and if not, DTS will change the SQL SECURITY
attribute of user1
in the target database from DEFINER
to INVOKER
([INVOKER = user1]
) after the migration, and set the DEFINER
in the target database to the migration account user2
([DEFINER = migration account user2]
). If the view definition in the source database is too complex, the task may fail.STATEMENT
format, the migration will fail.lower_case_tame_name
parameter (table name case sensitivity) of the source and target databases be the same. If the source database is TencentDB for MariaDB, as it allows modifying this parameter only during instance creation, you need to determine the case sensitivity rule when creating the source database and modify this parameter of the target database if the values are different during verification.ALTER VIEW
statement is not supported and will be skipped during migration.STATEMENT
format into the source database.__tencentdb__
during incremental migration.Operation Type | Supported SQL Operations |
DML | INSERT, UPDATE, DELETE, REPLACE |
DDL | TABLE: CREATE TABLE, ALTER TABLE, DROP TABLE, TRUNCATE TABLE, RENAME TABLE VIEW: CREATE VIEW, DROP VIEW INDEX: CREATE INDEX, DROP INDEX DATABASE: CREATE DATABASE, ALTER DATABASE, DROP DATABASE CREATE TABLE table name AS SELECT is not supported. |
Type | Environment Requirements |
Requirements for the source database | The source and target databases can be connected. The server where the source database resides must have enough outbound bandwidth; otherwise, the migration speed will be affected. Requirements for instance parameters: The server_id parameter in the source database must be set manually and cannot be 0.row_format for the source databases/tables cannot be set to FIXED .The values of the lower_case_table_names variable in both the source and target databases must be the same.The connect_timeout variable in the source database must be greater than or equal to 10.We recommend that you enable skip-name-resolve to reduce the possibility of connection timeout.Requirements for binlog parameters: The log_bin variable in the source database must be set to ON .The binlog_format variable in the source database must be set to ROW .The binlog_row_image variable in the source database must be set to FULL .On MySQL 5.6 or later, if the gtid_mode variable is not ON , an alarm will be triggered. We recommend you enable gtid_mode .You cannot set filter conditions with do_db and ignore_db .If the source instance is a replica database, the log_slave_updates variable must be set to ON .We recommend that you retain the binlog of the source database for at least three days; otherwise, the task cannot be resumed from the checkpoint and will fail. Foreign key dependency: Foreign key dependency can be set to only one of the following two types: NO ACTION and RESTRICT .During partial table migration, tables with foreign key dependency must be migrated. The migration precision of DTS for data in FLOAT type is 38 digits, and for data in DOUBLE type is 308 digits. You should check whether this meets your requirements.The environment variable innodb_stats_on_metadata must be set to OFF . |
Requirements for the target database | The target database version must be later than or equal to the source database version. The size of the target database space must be at least 1.2 times that of the databases/tables to be migrated in the source database. Full data migration will execute INSERT operations concurrently, causing some tables in the target database to generate data fragments. Therefore, after full migration is completed, the size of the tables in the target database may be larger than that in the source database. The target database cannot have migration objects such as tables and views with the same name as those in the source database. The max_allowed_packet parameter of the target database must be set to 4 MB or above. |
Configuration Items | Description |
Creation mode | Select Create new task. |
Billing Mode | Only the pay-as-you-go billing mode is supported. After the purchase is completed, fees will be charged only in the incremental migration stage but not task configuration and full migration stages. However, due to Tencent Cloud's unified requirements for pay-as-you-go billing, the fees for one hour's usage will be frozen after the purchase. For detailed billing rules, see Billing Overview. |
Source Instance Type | Select the source database type, which cannot be changed after purchase. Here, select MariaDB. If the source database is a self-built or third-party MariaDB, select MariaDB. If the source database is TencentDB for MariaDB (which has three kernel versions: MySQL, MariaDB, Percona), no matter which kernel is used, you still need to select MariaDB as the source database type. |
Source Instance Region | This refers to the source region of the DTS service. If the source database is TencentDB, select its region here. If the source database is self-built or in another cloud, select the region closest to it, so that DTS can choose the optimal migration path to reduce the migration time. |
Target Instance Type | Select the target database type, which cannot be changed after purchase. Here, select MariaDB. |
Target Instance Region | Select the target database region. |
Specification | Select the specification of the migration link based on your business conditions. For the performance and billing details of different specifications, see Billing Overview. |
Quantity | You can purchase up to 10 migration tasks at a time. |
Category | Configuration Items | Description |
Task Configuration | Task Name | Set a task name that is easy to identify. |
| Running Mode | Immediate execution: The task will be started immediately after the task verification is passed. Scheduled execution: You need to configure a task execution time and the task will be started automatically then. |
| Automatic Retry | After this option is set, if the migration task is temporarily interrupted due to a network error, DTS will automatically retry and resume the task within the set time range. The supported time range is 5–720 minutes. |
Source Database Settings | Source Database Type | The source database type selected during purchase, which cannot be changed. |
| Service Provider | For a self-built database (such as a CVM-based one) or TencentDB database, select Others. For a third-party cloud database, select the corresponding service provider. In this scenario, select Others. |
| Region | The source database region selected during purchase, which cannot be changed. |
| Access Type | Select a type based on your scenario. In this scenario, select Direct Connect or VPN Access, and you need to configure VPN-IDC interconnection as instructed in Direct Connect or VPN Access: Configuring VPN-IDC Interconnection. For the preparations for different access types, see Overview. Public Network: The source database can be accessed through a public IP. Self-Build on CVM: The source database is deployed in a CVM instance. Direct Connect: The source database can be interconnected with VPCs through Direct Connect. VPN Access: The source database can be interconnected with VPCs through VPN Connections. Database: The source database is a TencentDB instance. CCN: The source database can be interconnected with VPCs through CCN. |
| VPC-based Direct Connect Gateway/VPN Gateway | Only VPC-based Direct Connect gateway is supported. You need to confirm the network type associated with the gateway. For VPN Gateway, select a VPN Gateway instance. |
| Virtual Private Cloud (VPC) | Select a VPC and subnet associated with the VPC-based Direct Connect Gateway or VPN Gateway. |
| Host Address | IP address or domain name for accessing the source database. |
| Port | Port for accessing the source database. |
| Account | Account of the source database, which must have the required permissions. |
| Password | Password of the source database account. |
| Connection Method | Secure Sockets Layer (SSL) refers to the secure connection between DTS and the database through SSL that encrypts the transfer link. Enabling SSL may slow down the connection response. In general, the Tencent Cloud private network is secure, so there is no need to enable this option. If public network or Direct Connect are used for data transfer, and your business requires a higher level of data security, enable it; however, you should enable SSL encryption in the database first in this case. |
Target Database Settings | Target Database Type | The target database type selected during purchase, which cannot be changed. |
| Region | The target database region selected during purchase, which cannot be changed. |
| Access Type | Select a type based on your scenario. In this scenario, select Database. |
| Database Instance | Select the instance ID of the target database. |
| Account | Account of the target database, which must have the required permissions. |
| Password | Password of the target database account. |
| Connection Method | Secure Sockets Layer (SSL) refers to the secure connection between DTS and the database through SSL that encrypts the transfer link. Enabling SSL may slow down the connection response. In general, the Tencent Cloud private network is secure, so there is no need to enable this option. If public network or Direct Connect are used for data transfer, and your business requires a higher level of data security, enable it; however, you should enable SSL encryption in the database first in this case. |
Configuration Items | Description |
Migration Type | Select an option as needed. Structural migration: Structured data such as databases and tables in the database will be migrated. Full migration: The entire database will be migrated. The migrated data will only be existing content of the source database when the task is initiated but not include the incremental data written to the source database after the task is initiated. Full + Incremental migration: The migrated data will include the existing content of the source database when the task is initiated as well as the incremental data written to the source database after the task is initiated. If there are data writes to the source database during migration, and you want to smoothly migrate the data in a non-stop manner, select this option. |
Migration Object | Entire instance: Migrate the entire database instance excluding the system databases such as information_schema , mysql , performance_schema , and sys .Specified objects: Migrate specified objects. |
Advanced Migration Object | Procedures, functions, triggers, and events can be migrated. The migration of advanced objects is a one-time operation: only advanced objects already in the source database before the task start can be migrated, while those added to the source database after the task start will not be synced to the target database. Procedures and functions will be migrated during source database export. If there are no incremental migration tasks, triggers and events will be migrated when the task stops; otherwise, they will be migrated after you click Complete, in which case the transition will take a slightly longer time. |
Selected Object | Database/table mapping (renaming) is supported. Hover over a database or table name, click the displayed Edit icon, and enter a new name in the pop-up window. We recommend that you not rename tables when migrating advanced objects; otherwise, the migration may fail. |
Sync Online DDL Temp Table | If you perform an online DDL operation on tables in the source database with the gh-ost or pt-osc tool, DTS can migrate the temp tables generated by online DDL changes to the target database. If you select gh-ost, DTS will migrate the temp tables ( _table name_ghc , _table name_gho , and _table name_del ) generated by the gh-ost tool to the target database.If you select pt-osc, DTS will migrate the temp tables ( _table name_new and _table name_old ) generated by the pt-osc tool to the target database. |
Was this page helpful?