有奖捉虫:行业应用 & 管理与支持文档专题 HOT

操作场景

数据一致性校验,即 DTS 对数据迁移的源库和目标库的表数据进行对比,并给出对比结果和不一致详情,方便用户快速确定业务的割接时间。数据一致性校验任务是独立进行的,不会影响源数据库的正常业务,也不会影响 DTS 的任务。
数据一致性校验任务可以采用自动触发形式,也可以采用手动创建形式。具体校验技术方案,请参见 数据一致性校验技术方案解析及常见问题
自动触发,在配置迁移任务时,数据一致性检查勾选了全量检查迁移对象,则后续任务进行到同步增量步骤时自动触发一次一致性校验任务。
手动创建,在 DTS 任务步骤进行到同步增量时,手动创建一致性校验任务,支持多次创建。

注意事项

数据一致性校验的范围,仅对比源数据库选择的对象和迁移到目标数据库的对象,如果用户在迁移过程中向目标库进行数据写入,则这部分数据不包含在校验范围内。
数据一致性校验任务可能会增加源数据库实例的负载,因此请在业务低峰期进行操作。
数据一致性校验的任务可以重复执行,但一个 DTS 实例在同一时刻只能发起一个数据一致性校验任务。
如果在数据一致性校验任务还未结束时,用户选择完成或者终止 DTS 任务,则数据一致性校验任务会失败。
因为一致性校验需要在源数据库中创建新库 __tencentdb__,并在该库下写入 CheckSum 表,所以源数据库为只读时将会跳过一致性校验。

约束限制

当前校验任务对 DDL 操作不感知,如果在迁移过程中,用户对源库做了 DDL 操作,会出现校验结果不一致,需要用户重新发起校验任务才能得到准确的对比结果。

自动触发一致性校验任务

数据迁移任务设置迁移选项及选择迁移对象页面,数据一致性检查选择全量检查迁移对象,当后续任务进行到同步增量步骤时自动触发一次一致性校验任务。
说明:
自动触发一致性校验任务,默认会发起全量数据的内容校验和所有数据库信息校验,如需筛选校验对象,请选择手动创建一致性校验任务。


手动创建一致性校验任务

1. 登录 DTS 控制台
2. 数据迁移页面,选择需要校验的迁移任务,在操作列选择更多 > 创建数据一致性校验

3. 数据库一致性校验页面,单击创建数据一致性校验
说明:
数据一致性校验需要在 DTS 任务步骤进行到同步增量时,才可以创建。如果界面按钮呈灰色,则 DTS 任务状态不满足条件,如任务未进行到同步增量步骤、任务失败、任务终止。

4. 在弹出的温馨提示的对话框中,阅读提示信息,确认发起校验任务,单击确定
5. 创建数据一致性校验窗口,配置如下参数,单击创建并启动一致性校验

参数名称
参数含义
配置方式
任务名称
设置检验任务的名称。
可输入任意字符,请编辑便于识别管理的任务名称。
迁移对象模式
指明校验数据库的模式。
固定为整个实例
检验对象
选择校验迁移对象的方式
全部迁移对象:指对迁移的所有数据进行校验。
自定义选择:在下方源库对象区域,选择需校验的库表。
数据库信息
选择校验的数据库信息。支持校验索库表信息片键
分片集群,支持选择片键进行校验。
数据校验
选择数据校验方式。
行数校验:对比源库和目标库的数据行数。
内容校验:逐条对比源库和目标库的数据内容。
数据量较大时,建议使用行数校验。如果使用内容校验,请抽取相对低比例的数据进行校验,提高校验效率。
抽样对比
选择内容校验时,校验的数据量较大时,支持抽取一定比例的数据进行对比。
请根据业务情况选择抽样配比。

查看数据一致性校验结果

1. 在数据迁移任务列表的最后一次校验结果列,可查看任务对应的校验结果,一致或者不一致,单击查看更多进入数据校验一致性校验页面。
2. 在数据校验任务列表,选择具体的任务,单击其操作列的查看,即可查看校验结果。

校验一致的结果示例:

校验不一致的结果示例:
说明:
针对不一致性的结果,需要用户根据提示,手动确认源数据库和目标数据库的对应数据内容。


更多参考

具体校验技术原理与常见校验问题,请参见 数据一致性校验技术方案解析及常见问题