__tencentdb__
,用于记录迁移任务过程中的数据对比信息。__tencentdb__
。__tencentdb__
系统库占用空间非常小,约为源库存储空间的千分之一到万分之一(例如源库为50GB,则__tencentdb__
系统库约为5MB - 50MB),并且采用单线程,等待连接机制,所以对源库的性能几乎无影响,也不会抢占资源。__tencentdb__
。CREATE USER '迁移账号'@'%' IDENTIFIED BY '迁移密码';GRANT SELECT,RELOAD,LOCK TABLES,REPLICATION CLIENT,REPLICATION SLAVE,SHOW DATABASES,SHOW VIEW,PROCESS ON *.* TO '迁移账号'@'%';//源端若为腾讯云 TDSQL MySQL 数据库,需要提交工单进行 RELOAD 授权,其他场景请用户参照代码授权GRANT INSERT, UPDATE, DELETE, DROP, SELECT, INDEX, ALTER, CREATE ON `__tencentdb__`.* TO '迁移账号'@'%';
information_schema
, sysdb
,test
,sys
, performance_schema
, __tencentdb__
, mysql
。STATEMENT
格式的 Binlog 语句,则会导致迁移失败。STATEMENT
的数据。__tencentdb__
。操作类型 | 支持同步的 SQL 操作 |
DML | INSERT、UPDATE、DELETE、REPLACE |
DDL | TABLE:CREATE TABLE、ALTER TABLE、DROP TABLE、TRUNCATE TABLE VIEW:CREATE VIEW、DROP VIEW INDEX:CREATE INDEX、DROP INDEX DATABASE:CREATE DATABASE、ALTER DATABASE、DROP DATABASE 暂不支持 CREATE TABLE 表名 AS SELECT 语句。 |
类型 | 环境要求 |
源数据库要求 | 源库和目标库网络能够连通。 实例参数要求: table_row_format 不能设置为 FIXED。 源库和目标库 lower_case_table_names 变量必须设置一致。 检查目标端 max_allowed_packet 参数,至少设置 4M。 源库变量 connect_timeout 设置数值必须大于10。 Binlog参数要求: 源端 binlog_format 变量必须设置为 ROW。 源端 log_bin 变量必须设置为 ON。 源端 binlog_row_image 变量必须设置为 FULL。 源端 gtid_mode 变量在5.6及以上版本不为 ON 时,会报 WARNING,建议用户打开 gtid_mode。 不允许设置 do_db, ignore_db。 对于源实例为从库的情况,log_slave_updates 变量必须设置为 ON。 建议源库 Binlog 日志至少保留3天及以上,否则可能会因任务暂停/中断时间大于 Binlog 日志保留时间,造成任务无法续传,进而导致任务失败。 外键依赖: 外键依赖只能设置为 no action 和 restrict 两种类型。 部分库表迁移时,有外键依赖的表必须齐全。 环境变量 innodb_stats_on_metadata 必须设置为 OFF。 |
目标数据库要求 | 目标库为分布式数据库时,推荐提前手动创建分表,并规划 shardkey,否则 DTS 会按照源库的表样式来在目标库创建表,如果源库为单机实例,则目标库会创建为单表。 目标库的版本必须大于等于源库的版本。 目标库的空间大小须是源库待迁移库表空间的1.2倍以上。 目标库不能有和源库冲突的库表。 |
配置项 | 说明 |
源实例类型 | 请根据您的源数据库类型选择,购买后不可修改。本场景选择“TDSQL MySQL”。 云数据库 TDSQL MySQL 分为三种内核版本(MySQL/MariaDB/Percona),这里无需区分内核版本,选择本身的数据库类型 TDSQL MySQL。 |
源实例地域 | 选择源数据库所属地域。 |
目标实例类型 | 请根据您的目标数据库类型选择,购买后不可修改。本场景选择“TDSQL MySQL”。 |
目标实例地域 | 选择目标数据库所属地域。 |
规格 |
设置类型 | 配置项 | 说明 |
任务设置 | 任务名称 | 设置一个具有业务意义的名称,便于任务识别。 |
| 运行模式 | 支持立即执行和定时执行:立即执行,则完成任务校验通过后立即启动任务;定时执行,需要配置一个任务执行时间则到时间后启动任务。 |
| 标签 | 标签用于从不同维度对资源分类管理。如现有标签不符合您的要求,请前往控制台管理标签。 |
源库设置 | 源库类型 | 购买时选择的源库类型,不可修改。 |
| 所属地域 | 购买时选择的源库地域,不可修改。 |
| 接入类型 | 选择“云数据库”。 |
| 数据库实例 | 选择源数据库实例 ID。 |
| 账号 | 源库 TDSQL MySQL 的数据库账号,账号权限需要满足要求。 |
| 密码 | 源库 TDSQL MySQL 的数据库账号的密码。 |
目标库设置 | 目标库类型 | 购买时选择的目标库类型,不可修改。 |
| 所属地域 | 购买时选择的目标库地域,不可修改。 |
| 接入类型 | 选择“云数据库”。 |
| 数据库实例 | 选择目标端 TDSQL MySQL 实例 ID。 |
| 账号 | 目标端 TDSQL MySQL 的数据库账号,账号权限需要满足要求。 |
| 密码 | 目标端 TDSQL MySQL 的数据库账号的密码。 |
配置项 | 说明 |
迁移类型 | 请根据您的场景选择。 结构迁移:迁移数据库中的库、表等结构化的数据。 全量迁移:迁移整个数据库,迁移数据仅针对任务发起时,源数据库已有的内容,不包括任务发起后源库实时新增的数据写入。 全量 + 增量迁移:迁移数据包括任务发起时源库的已有内容,也包括任务发起后源库实时新增的数据写入。如果迁移过程中源库有数据写入,需要不停机平滑迁移,请选择此场景。 |
迁移对象 | 整个实例:迁移整个实例,但不包括系统库,如information_schema、mysql、performance_schema、sys。 指定对象:迁移指定对象。 |
指定对象 | 在源库对象中选择待迁移的对象,然后将其移到已选对象框中。 |
本页内容是否解决了您的问题?