__tencentdb__
,用于记录同步任务过程中的数据对比信息。__tencentdb__
。__tencentdb__
系统库占用空间非常小,约为源库存储空间的千分之一到万分之一(例如源库为50GB,则__tencentdb__
系统库约为5MB - 50MB),并且采用单线程,等待连接机制,所以对源库的性能几乎无影响,也不会抢占资源。GRANT RELOAD,LOCK TABLES,REPLICATION CLIENT,REPLICATION SLAVE,SHOW VIEW,PROCESS,SELECT ON *.* TO '帐号'@'%' IDENTIFIED BY '密码';GRANT ALL PRIVILEGES ON `__tencentdb__`.* TO '迁移帐号'@'%';FLUSH PRIVILEGES;
DEFINER
对应的 user1( [DEFINER = user1])和同步用户的 user2 是否一致,如果不一致,则会修改 user1 在目标库中的 SQL SECURITY
属性,由 DEFINER
转换为 INVOKER
( [INVOKER = user1]),同时设置目标库中 DEFINER
为同步用户的 user2([DEFINER = user2])。如果源库中视图定义过于复杂,可能会导致任务失败。STATEMENT
格式的 Binlog 语句,则会导致同步失败。ALTER VIEW
语句,遇到该语句任务跳过不同步。STATEMENT
的数据。__tencentdb__
。操作类型 | 支持同步的 SQL 操作 |
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 |
类型 | 环境要求 |
源数据库要求 | 源库和目标库网络能够连通。 实例参数要求: 源库 server_id 参数需要手动设置,且值不能设置为0。 源库表的 row_format 不能设置为 FIXED。 源库和目标库 lower_case_table_names 变量必须设置一致。 源库变量 connect_timeout 设置数值必须大于10。 Binlog 参数要求: 源端 log_bin 变量必须设置为 ON。 源端 binlog_format 变量必须设置为 ROW。 源端 binlog_row_image 变量必须设置为 FULL。 TDSQL-C MySQL 5.6 及以上版本 gtid_mode 变量不为 ON 时会报警告,建议打开 gtid_mode。 不允许设置 do_db,ignore_db。 源实例为从库时,log_slave_updates 变量必须设置为 ON。 建议源库 Binlog 日志至少保留3天及以上,否则可能会因任务暂停/中断时间大于 Binlog 日志保留时间,造成任务无法续传,进而导致任务失败。 外键依赖: 外键依赖只能设置为 NO ACTION,RESTRICT 两种类型。 部分库表同步时,有外键依赖的表必须齐全。 环境变量 innodb_stats_on_metadata必须设置为 OFF。 |
目标数据库要求 | 目标库的版本必须大于等于源库的版本。 目标库需要有足够的存储空间,如果初始类型选择“全量数据初始化”,则目标库的空间大小须是源库待同步库表空间的1.2倍以上。 目标库不能有和源库同名的表、视图等同步对象。 目标库 max_allowed_packet 参数设置数值至少为4M。 |
参数 | 描述 |
计费模式 | 支持包年包月和按量计费。 |
源实例类型 | 选择 TDSQL-C MySQL,购买后不可修改。 |
源实例地域 | 选择源实例所在地域,购买后不可修改。 |
目标实例类型 | 选择 TDSQL-C MySQL,购买后不可修改。 |
目标实例地域 | 选择目的实例所在地域,购买后不可修改。 |
规格 |
设置项 | 参数 | 描述 |
任务设置 | 任务名称 | DTS 会自动生成一个任务名称,用户可以根据实际情况进行设置。 |
| 运行模式 | 支持立即执行和定时执行两种模式。 |
| 自动重试 | 设置后,迁移任务因网络异常等引起的任务临时中断,DTS 将在设置的时间范围内自动重试和恢复任务,不需要用户手动操作。
支持设置的时间范围为5分钟-720分钟。 |
源实例设置 | 源实例类型 | 购买时所选择的云数据库实例类型,不可修改。 |
| 源实例地域 | 购买时选择的云数据库实例所在地域,不可修改。 |
| 接入类型 | 根据实际情况选择,本场景选择“云数据库”。 公网:源数据库可以通过公网 IP 访问。 云主机自建:源数据库部署在 腾讯云服务器 CVM 上。 专线接入:源数据库可以通过 专线接入 方式与腾讯云私有网络打通。 VPN接入:源数据库可以通过 VPN 连接 方式与腾讯云私有网络打通。 云数据库:源数据库属于腾讯云数据库实例。 云联网:源数据库可以通过 云联网 与腾讯云私有网络打通。 私有网络 VPC:源数据和目标数据库都部署在腾讯云上,且有 私有网络。 |
| 实例 ID | 源数据库实例 ID。 |
| 帐号 | 源数据库帐号。 |
| 密码 | 源数据库密码。 |
| 连接方式 | SSL 安全连接指 DTS 与数据库通过 SSL(Secure socket layer)安全连接,对传输链路进行加密。 选择 SSL 安全连接可能会增加数据库的连接响应时间,一般腾讯云内网链路相对较安全,无需开启 SSL 安全连接,采用公网/专线等传输方式,并且对数据安全要求较高的场景,需要开启 SSL 安全连接。选择 SSL 安全连接前,需要先在源数据库中开启 SSL 加密。 |
目标实例设置 | 目标实例类型 | 所选择的目标实例类型,不可修改。 |
| 目标实例地域 | 选择的目标实例所在地域,不可修改。 |
| 接入类型 | 选择目标数据库类型。 |
| 实例 ID | 目标数据库实例 ID。 |
| 帐号 | 目标数据库帐号。 |
| 密码 | 目标数据库密码。 |
| 连接方式 | SSL 安全连接指 DTS 与数据库通过 SSL(Secure socket layer)安全连接,对传输链路进行加密。 选择 SSL 安全连接可能会增加数据库的连接响应时间,一般腾讯云内网链路相对较安全,无需开启 SSL 安全连接,采用公网/专线等传输方式,并且对数据安全要求较高的场景,需要开启 SSL 安全连接。选择 SSL 安全连接前,需要先在源数据库中开启 SSL 加密。 |
设置项 | 参数 | 描述 |
数据初始化选项 | 初始化类型 | 结构初始化:同步任务执行时会先将源实例中表结构初始化到目标实例中。 全量数据初始化:同步任务执行时会先将源实例中数据初始化到目标实例中。仅选择全量数据初始化的场景,用户需要提前在目标库创建好表结构。 默认两者都勾上,可根据实际情况取消。 |
| 已存在同名表 | 前置校验并报错:存在同名表则报错,流程不再继续。 忽略并继续执行:全量数据和增量数据直接追加目标实例的表中。 |
数据同步选项 | 冲突处理机制 | 冲突报错:在同步时发现表主键冲突,报错并暂停数据同步任务。 冲突忽略:在同步时发现表主键冲突,保留目标库主键记录。 冲突覆盖:在同步时发现表主键冲突,用源库主键记录覆盖目标库主键记录。 |
| 同步操作类型 | |
同步对象选项 | 源实例库表对象 | 选择待同步的对象,支持库级别和表及视图级别。 |
| 已选对象 | 支持库表映射(库表重命名),将鼠标悬浮在库名、表名上即显示编辑按钮,单击后可在弹窗中填写新的名称。 选择高级对象进行同步时,建议不要进行库表重命名操作,否则可能会导致高级对象同步失败。 |
| 是否同步 Online DDL 临时表 | 如果使用 gh-ost、pt-osc 工具对源库中的表执行 Online DDL 操作,DTS 支持将 Online DDL 变更产生的临时表迁移到目标库。 勾选 gh-ost,DTS 会将 gh-ost 工具产生的临时表名(`_表名_ghc`、`_表名_gho`、`_表名_del`)迁移到目标库。 勾选 pt-osc, DTS 会将 pt-osc 工具产生的临时表名(`_表名_new`、 `_表名_old`)迁移到目标库。 |
本页内容是否解决了您的问题?