创建数据一致性校验

最近更新时间:2025-10-22 09:18:02

我的收藏

操作场景

数据一致性校验,即 DTS 对数据同步的源库和目标库的表数据进行对比,并给出对比结果和不一致详情,辅助用户在割切前快速验证同步结果。数据一致性校验任务是独立进行的,不会影响源数据库的正常业务,也不会影响 DTS 的任务。
说明:
一致性校验仅作为辅助的数据验证手段。在正式割接前,请用户自行进行演练操作以确保结果满足割接要求。
当前仅支持全量场景的数据一致性校验,暂不支持增量场景的数据一致性校验,因此,在创建数据一致性校验前,请停止进行数据写入。
当前支持数据一致性校验的链路为:SQL Server > SQL Server。

注意事项及约束

数据一致性校验任务可能会增加源数据库实例的负载,因此请在业务低峰期进行操作。
校验类型为抽样校验时,需要校验的表必须具有主键或唯一键,否则将跳过不进行校验,校验类型为行数校验时,不要求有主键或者唯一键,如果表格没有主键或唯一键且数据超过1万条则不能进行完整校验。
如果在数据一致性校验任务还未结束时,用户选择完成或者终止 DTS 任务,则数据一致性校验任务会失败。

创建数据一致性校验任务

说明:
单独创建数据一致性校验任务时,校验方式只支持独立校验,不支持内置校验。
独立校验独立于 DTS 任务外,选择源端和目标端相同的数据块进行对比。DTS 任务停止运行后,不支持发起校验。
只有在任务运行中才能发起独立校验任务。任务已完成无法发起校验任务。您可以基于交割的不同阶段,分批次和不同的校验方法多次发起校验任务。
1. 登录 DTS 控制台,在左侧导航选择数据同步页,在任务列表找到目标任务,在其操作列单击更多 > 创建数据一致性校验

说明:
您也可以在任务列表的操作列单击查看,或者直接单击任务 ID 进入任务详情页面,然后选择一致性校验页面,单击创建数据一致性校验

2. 在弹窗中,完成如下配置,单击创建并启动一致性校验

参数
说明
任务名称
填写本次校验任务的名称。
校验方式
独立校验:校验服务独立于源端和目标端之外,从源端和目标端选择相同的数据块进行计算,并对比数据是否一致。
校验内容
默认选项为全量校验,表示针对校验任务发起时源和目标库中的全部数据进行比较。
校验基准
默认选项为源端,表示使用源端的数据作为校验基准。
校验类型
完整校验:对所选校验对象进行完整的一致性校验。
行数校验:对所选校验对象,仅对比数据行数。选择行数对比时,不要求表对象有主键,无主键表也可以进行校验。
抽样校验:对所选校验对象抽选一定的比例进行校验,抽样比例支持10%,20%,30%……90%。
校验对象
全部同步对象:校验范围为同步任务勾选的全部对象。
自定义选择:在勾选的同步对象中,选择进行校验的对象。
线程数选择
设置范围为1 - 8,请根据实际情况选择。
提高线程数可加快一致性校验速度,但也会增加源和目标库的负载,请谨慎调整。每提升一个线程数,约增加消耗一个 CPU 的占用。
数据一致性校验可能会增加源数据库实例的负载,请在业务低峰期进行操作。
复检次数
设置复检次数。如果在第一次全量数据校验的结果为不一致,则后台会对全量校验不一致的数据,发起校验。设置范围为1 - 2。
复检时间间隔
设置复检时间间隔。设置范围为1 - 10,单位:分钟。

查看数据一致性校验结果

1. 登录 DTS 控制台,在左侧导航选择数据同步页,在任务列表的操作列单击查看,或者直接单击任务 ID 进入任务详情。
2. 单击一致性校验,进入数据一致性校验的任务列表,在列表下即可查看创建的数据一致性校验任务的校验结果(一致或者不一致)。

3. 单击查看可进入校验详情页。

数据校验结果汇总

数据校验结果的汇总信息如下表所示:
项目
详情
概要
对比类型:当前全部为独立校验。
对比方式:可选方式为完整校验、抽样校验和行数校验。
状态:当前校验任务的状态,为创建完成、等待运行、运行中或者已完成。
对比结论:当前校验任务的运行结果,为不一致或者一致。
线程数:当前任务配置的线程数。
开始时间:当前任务的开始时间。
结束时间:当前任务的结束时间。
预估表总数目
系统预计的需要校验的所有表的总数。
已检测表数量
任务当前已经完成检测的表的数量。
不一致表数量
已经完成检测的表中,源和目标端不一致的表的数量。具体的不一致表,可以到不一致详情查看。
已跳过表数
本次校验中,跳过校验的表数量。