__tencentdb__
in the source database to record the data comparison information during the sync task.__tencentdb__
system database in the source database will not be deleted after the sync 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.GRANT RELOAD,LOCK TABLES,REPLICATION CLIENT,REPLICATION SLAVE,SHOW VIEW,PROCESS,SELECT ON *.* TO 'account'@'%' IDENTIFIED BY 'password';GRANT ALL PRIVILEGES ON `__tencentdb__`.* TO 'account'@'%';FLUSH PRIVILEGES;
user1
corresponding to DEFINER
([DEFINER = user1]
) in the source database is the same as the sync 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 sync, and set the DEFINER
in the target database to the sync account user2
([DEFINER = sync account user2]
). If the view definition in the source database is too complex, the task may fail.STATEMENT
format, sync will fail.ALTER VIEW
statement is not supported and will be skipped during sync.STATEMENT
format into the source database.__tencentdb__
during incremental sync.Operation Type | SQL Statement |
DML | INSERT, UPDATE, DELETE |
DDL | CREATE DATABASE, DROP DATABASE, ALTER DATABASE, CREATE TABLE, ALTER TABLE, DROP TABLE, TRUNCATE TABLE, RENAME TABLE, CREATE VIEW, DROP VIEW, CREATE INDEX, DROP INDEX |
CREATE TABLE table name AS SELECT
is not supported.Type | Environment Requirement |
Requirements for the source database | The source and target databases can be connected. 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.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 .It is not allowed to set 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 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 if it is suspended or interrupted for longer than the time set for binlog retention. Foreign key dependency: Foreign key dependency can be set to only one of the following two types: NO ACTION and RESTRICT .During partial table sync, tables with foreign key dependency must be migrated. 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 target database must have sufficient storage space. If you select Full data initialization as the initialization type, the target database space must be at least 1.2 times the space of databases/tables to be synced in the source database. The target database cannot have sync 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. |
Was this page helpful?