You need to enable JavaScript to run this app.
文档中心
数据库传输服务

数据库传输服务

复制全文
下载 pdf
预检查项
预检查项(MySQL)
复制全文
下载 pdf
预检查项(MySQL)
数据库传输服务 DTS 创建或配置 MySQL 的迁移或同步任务时,会先对数据库进行各项检查。本文介绍检查项的详细信息。​
说明​
预检查的检查结果等级包含 Error 和 Warning,具体如下所示:​
  • Error:表示检查结果等级为错误级别,在创建任务预检查时遇到该报错类型,不可忽略,必须根据提示修改相关信息后重新预检查。​
  • Warning:表示预检查结果等级为提示级别,在创建任务预检查时遇到该报错类型,可忽略。​
​
检查项​
数据库类型​
检查范围​
级别​
检查内容​
备注​
目标库 ReadOnly 配置检查​
目标库​
  • 所有迁移​
  • 所有同步​
Error​
检查目标数据库的 ReadyOnly 配置是否满足迁移或同步要求。​
当 ReadOnly 中的参数取值满足以下任意条件时,则预检查不通过:​
  • super_read_only:取值为 ON 时。​
  • innodb_read_only:取值为 ON 时。​
  • transaction_read_only:取值为 ON 时。​
  • read_only:取值为 ON 时且迁移账号不具备 SUPER 和 CONNECTION_ADMIN 权限​
目标库触发器检查​
目标库​
  • 所有迁移​
  • 所有同步​
Warning​
检查目标库是否存在触发器。​
无​
目标表/数据库存在性检测​
目标库​
  • 全量迁移​
  • 全量初始化​
Warning​
检查目标实例的库存在性是否符合预期。​
当选择全量迁移但未选择结构迁移,或选择全量初始化但未选择结构初始化时,若目标库表不存在对应结构,可能会导致迁移或初始化失败。​
​
​
  • 增量迁移​
  • 增量同步​
Warning​
检查目标实例的表存在性是否符合预期。​
当选择了增量迁移或同步但未选择结构迁移或初始化时,若目标库表不存在对应结构,可能会导致迁移或同步失败。​
说明​
您可以通过增量 DDL 的方式进行结构迁移或初始化。​
源表/数据库存在性检测​
源库​
  • 全量迁移​
  • 全量初始化​
Warning​
检查源实例的库存在性是否符合预期。​
当选择全量迁移但未选择结构迁移,或选择全量初始化但未选择结构初始化时,若源库表不存在对应结构,可能会导致迁移或初始化失败。​
​
​
  • 增量迁移​
  • 增量同步​
Warning​
检查源实例的表存在性是否符合预期。​
当选择了增量迁移或同步但未选择结构迁移或初始化时,若源库表不存在对应结构,可能会导致迁移或同步失败。​
说明​
您可以通过增量 DDL 的方式进行结构迁移或初始化。​
目标库权限检测​
目标库​
  • 所有迁移​
  • 所有同步​
Warning​
检查目标实例的账号权限是否满足迁移或同步要求。​
迁移或同步的类型不同,需要的权限也不同,其中:​
  • 增量迁移或增量同步要求目标库账号拥有 SELECT、INSERT、UPDATE、DELETE、CREATE、INDEX、ALTER、DROP 权限。​
  • 全量迁移或全量初始化要求目标库账号拥有 SELECT、INSERT、UPDATE 权限。​
  • 结构迁移或结构初始化要求目标库账号拥有 SELECT、CREATE、INDEX、ALTER 权限。​
  • 用户迁移要求目标库账号拥有 CREATE USER、GRANT OPTION 权限。​
检查 innodb_strict_mode 设置是否一致​
  • 源库​
  • 目标库​
  • 所有迁移​
  • 所有同步​
Warning​
检查 InnoDB 严格模式设置是否一致​
无​
检查 innodb_large_prefix 兼容性​
  • 源库​
  • 目标库​
  • 所有迁移​
  • 所有同步​
Error​
检查源库和目标库 innodb_large_prefix 的兼容性。​
无​
检查 SQL_MODE 是否一致​
  • 源库​
  • 目标库​
  • 所有迁移​
  • 所有同步​
Warning​
检查源库和目标库的 SQL_MODE 是否一致。​
无​
账号存在性检查​
  • 源库​
  • 目标库​
用户迁移​
Warning​
检查源库中待迁移的账号是否已存在于目标库中。​
无​
源端和目标库表名大小写敏感性检查​
  • 源库​
  • 目标库​
  • 所有迁移​
  • 所有同步​
Warning​
检查源库和目标库的 lower_case_table_names 是否一致。​
无​
检查事务隔离级别(tx_isolation)是否一致​
  • 源库​
  • 目标库​
  • 所有迁移​
  • 所有同步​
Warning​
检查事务隔离级别是否一致。​
无​
检查元数据的 Definer 是否存在​
  • 源库​
  • 目标库​
  • 结构迁移​
  • 结构初始化​
Warning​
检查视图、存储过程、函数、触发器的 Definer 是否在目标库存在​
结构 Definer 不存在可能导致迁移结构后不可用。​
数据库版本检查​
  • 源库​
  • 目标库​
  • 所有迁移​
  • 所有同步​
  • 数据订阅​
Warning​
检查源库和目标库版本是否已被支持。​
源库和目标库版本均需大于 MySQL 5.5。​
数据库连通性检查​
  • 源库​
  • 目标库​
  • 所有迁移​
  • 所有同步​
  • 数据订阅​
Error​
检查数据传输服务器是否能连通源库和目标库。​
无​
检查被迁移表外键依赖​
  • 源库​
  • 目标库​
  • 所有迁移​
  • 所有同步​
Warning​
检查源库中待迁移或同步表外键所依赖的表是否存在或在迁移同步范围内。​
无​
账号迁移依赖检查​
  • 源库​
  • 目标库​
用户迁移​
Warning​
检查源库账号所有授权的结构是否已迁移至目标库。​
无​
数据库主版本检测​
  • 源库​
  • 目标库​
  • 所有迁移​
  • 所有同步​
Warning​
检查源库和目标库主版本是否一致。​
无​
源库 ServerID 检查​
源库​
  • 增量迁移​
  • 增量同步​
  • 数据订阅​
Warning​
检查源库 ServerID 是否为 1。​
如果源库 ServerID 为 1,系统将无法确认是否配置 ServerID,需要您自行确认。​
源库 gtid mode 开启检查​
源库​
  • 所有迁移​
Warning​
检查源数据库实例的参数 gtid mode 是否设置为 ON。​
  • 当 MySQL 的版本小于 8.0 且未开启参数 gtid_mode 时,可能会在数据迁移过程中导致外键级联删除失败,从而造成数据差异。​
  • 在不开启 gtid mode 时,源数据库实例不支持切主。​
​
​
  • 所有同步​
Warning​
​
  • 当源库数据库版本大于等于 MySQL 5.6 时,gtid_mode 和 enforce_gtid_consistency 取值均需为 ON。​
  • 当 MySQL 的版本小于 8.0 且未开启参数 gtid_mode 时,可能会在数据同步过程中导致外键级联删除失败,从而造成数据差异。​
源库 GIPK 检查​
源库​
  • 所有迁移​
  • 所有同步​
  • 数据订阅​
Warning​
检查源数据库 GIPK 是否开启。​
如果源端的数据库实例不支持参数 sql_generate_invisible_primary_key,即源端数据库实例的版本小于 8.0.29,则该预检查项默认通过。​
检查源库表是否包含主键​
源库​
  • 全量迁移​
  • 增量迁移​
  • 全量初始化​
  • 增量同步​
Warning​
检查源数据库的表是否包含主键。无主键可能会引发数据不一致行为, 需添加主键。迁移无主键大表(大于 100M)时,会对源库和目标库造成较大压力。建议充分评估数据库性能,并在业务低峰期迁移无主键大表。​
无​
源表存储引擎检查​
源库​
  • 增量迁移​
  • 增量同步​
  • 数据订阅​
Warning​
检查源库中待迁移或同步的表是否使用的是 InnoDB 引擎。​
  • 数据迁移支持的存储引擎包括 InnoDB、MyISAM 和 RocksDB。在数据迁移过程中,如果源库不是 InnoDB 存储引擎,系统会自动将其转换为 InnoDB。​
  • 数据同步和数据订阅支持的存储引擎是 InnoDB。​
​
​
结构迁移​
Warning​
检查其他非 InnoDB 引擎的表,在结构迁移或初始化时是否会自动转为 InnoDB 引擎。​
​
源端 Binlog 开启检查​
源库​
  • 增量迁移​
  • 增量同步​
  • 数据订阅​
Error​
检查源库是否开启 Binlog。​
Binlog 参数需同时满足如下要求:​
  • log_bin 取值为 ON。​
  • binlog_format 取值为 ROW。​
  • 对于 MySQL 5.6.2 及以上版本,binlog_row_image 取值为 FULL。​
检查源库 log_slave_updates​
源库​
  • 增量迁移​
  • 增量同步​
  • 数据订阅​
Warning​
检查源库 log_slave_updates 是否为 ON。​
无​
源库权限检查​
源库​
  • 所有迁移​
  • 所有同步​
  • 数据订阅​
Warning​
检查源数据库的账号权限是否满足迁移、同步或订阅的要求。​
  • 检查源库是否有 REPLICATION SLAVE 和 REPLICATION CLIENT 权限。​
  • 源库的数据库账号密码不能超过 32 位。​
检查源端是否具有 SHOW CREATE ROUTINE 权限​
源库​
  • 结构迁移​
  • 结构初始化​
Error​
检查源库是否有 SHOW CREATE ROUTINE 权限。​
源库需具备 SHOW CREATE ROUTINE 权限,才能获取待迁移或初始化 Routine 对象的创建语句。​
检查源端是否具有 SHOW CREATE VIEW 权限​
源库​
  • 结构迁移​
  • 结构初始化​
Warning​
检查源库是否有 SHOW CREATE VIEW 权限。​
源库需具备 SHOW CREATE VIEW 权限,才能获取待迁移或同步 View 对象的创建语句。​
目标库 EventScheduler 配置检查​
目标库​
结构迁移​
Warning​
检查目标数据库的 EventScheduler 配置是否符合预期。当 event_scheduler 设置为 ON 时,事件迁移后不会被执行。​
当迁移类型选择了结构迁移且需要迁移事件时,需检查该检查项。​
目标库时区检查​
  • 源库​
  • 目标库​
结构迁移​
Warning​
检查目标数据库的时区是否一致。​
当迁移类型选择了结构迁移且需要迁移事件时,需检查该检查项。​
数据库连接和结构通配符规则检查​
源库​
  • 所有迁移​
  • 所有同步​
  • 数据订阅​
Warning​
连接或展开源端通配符。​
无​
源端表或数据库存在性检查​
源库​
  • 所有迁移​
  • 所有同步​
  • 数据订阅​
Error​
检查源数据库中指定的表/库是否存在。​
无​
源库增量位点检查​
源库​
  • 增量迁移​
  • 增量同步​
  • 数据订阅​
Warning​
检查源库数据库增量位点是否存在。​
无​
检查源库的无主键表​
源库​
  • 所有迁移​
  • 所有同步​
Error​
检查源数据库无主键表的行数和容量(大于 10W 行或大于 100MB 的表)。​
无​
目标库 SET_USER_ID 权限检查​
目标库​
  • 所有迁移​
  • 所有同步​
Warning​
检查目标数据库的账号 SET_USER_ID 权限是否满足迁移要求。​
无​
目标数据库 max_allowed_packet 配置检查​
目标库​
  • 所有迁移​
  • 所有同步​
Warning​
检查目标数据库的 max_allowed_packet 是否小于 16MB。​
无​
目标库 innodb_rollback_on_timeout 关闭检查​
目标库​
  • 所有迁移​
  • 所有同步​
Warning​
检查目标库 innodb_deadlock_detect 关闭时是否也关闭了 innodb_rollback_on_timeout。​
无​
迁移权限检查​
源库​
用户迁移​
Warning​
账号迁移是否包含 All 权限。​
无​
目标库 partial_revokes 配置检查​
目标库​
用户迁移​
Warning​
数据库的 partial_revokes 是否开启。​
在源端和目标端的 MySQL 版本大于 8.0,且源端待迁移账户具备 Partial REVOKE 权限时才会检查。​
目标库 log_bin_trust_function_creators 开启检查​
目标库​
  • 所有迁移​
  • 所有同步​
  • 结构迁移​
Warning​
检查目标库是否开启 log_bin_trust_function_creators。​
无​
双向同步表自增列检查​
  • 源库​
  • 目标库​
双向同步​
Warning​
检查双向同步中源库和目标库是否有包含自增列的表。​
无​
双向同步源库和目标库同步条件检查​
  • 源库​
  • 目标库​
双向同步​
Warning​
检查双向同步源库和目标库是否满足同步条件。​
检查迁移账户是否具备标记库表的读写权限。​
源和目标端同名表存在性检查​
  • 源库​
  • 目标库​
  • 所有迁移​
  • 所有同步​
Warning​
检查源端和目标端是否存在同名的表。​
如果目的端存在同名表,则迁移或同步任务将存在报错或数据覆盖的风险。​
运行环境检测​
  • 源库​
  • 目标库​
  • 所有迁移​
  • 所有同步​
  • 数据订阅​
Warning​
运行环境检测。​
无​
数据同步版本检查​
  • 源库​
  • 目标库​
所有同步​
Error​
数据同步版本检查。​
当源库数据库版本小于 MySQL 5.6 时,预检查不通过。​
源和目标端同实例同库表检查​
  • 源库​
  • 目标库​
  • 所有迁移​
  • 单向同步​
Warning​
检查源端和目标端是否同实例同库表。​
无​
目标端账号迁移权限检查​
目标库​
  • 所有迁移​
  • 所有同步​
Warning​
迁移账号是否具有创建用户权限。​
目标端账号需具备 GRANT OPTION 权限,否则可能会导致用户迁移失败。​
毫秒级延迟监控可用性检查​
源库​
MySQL 至 MySQL 同步任务​
Error​
检查源库毫秒级延迟监控的可用性。​
​
  • 当预检查不通过时您可能会遇到以下报错提示:​
  • 无心跳表的创建权限且心跳表不存在。​
  • 无心跳表的写入权限。​
  • 发现源库或目标库系统变量 read_only = ON,且账号不具备 SUPER 和 CONNECTION_ADMIN 权限,无法进行更新操作。​
  • 发现源库或目标库系统变量取值为 ON,无法进行更新操作,系统变量如下所示:​
  • super_read_only​
  • innodb_read_only​
  • transaction_read_only​
  • tx_read_only​
当遇到以上报错提示时,请根据提示修改对应问题。详细操作,请参见开启毫秒级延迟监控预检查不通过怎么办?。​
  • 源端需为读写节点,或账号需具备 INSERT、UPDATE 权限,否则无法写入心跳表。​
源端 Proxy 检查​
源库​
​
  • 增量迁移​
  • 增量同步​
  • 增量订阅​
Error​
​
检查源端是否为 Proxy。​
非火山引擎实例作为传输数据的源端时,源端数据库不支持配置多节点 Proxy 地址。在增量数据同步、增量迁移和增量订阅阶段,DTS 需与特定数据库实例建立稳定的长连接。多节点 Proxy 的负载均衡或路由机制可能引发连接漂移或日志解析失败问题。建议您直接配置单一节点的连接地址,或采用数据库网关(DG)进行接入。​
​
​
​
最近更新时间:2026.11.05 19:28:38
这个页面对您有帮助吗?
有用
有用
无用
无用