用DTS同步链路做数据库全量迁移及增量同步时,当同步对象为整个库,且库中的触发器(TRIGGER)会更新库内某个表时,可能导致源和目标库的数据不一致。为解决该问题,需要删除被迁移到目标库中的触发器。

在配置数据迁移任务时,设置迁移类型及列表环节仅需选择结构迁移,然后选择待迁移的库或表。

DTS.png

执行结构迁移时,触发器也会被迁移至目标库中。当迁移任务完成后,需要登录目标数据库,执行下述命令删除被迁移过去的触发器。

drop trigger <触发器名称>;

再次创建数据同步作业,将源库的数据同步至目标库中,由于已经完成了结构迁移,在同步作业的高级设置环节中,仅需选中全量数据初始化

DTS1.png