dm同步异常

  • 【TiDB 版本】:v4.0.1 GA
  • 【DM版本】:v1.0.5
  • 【问题描述】:
    syncerbinlog的pos号和masterbinlog的不一致

产生过程:
第一步:上游执行分表添加字段操作,下游产生ddls锁


第二步:
image
第三步:
image
第四步执行query-status shard
依然显示ddls,同第一步显示一样
第五步:修改binlog_name和binlog_pos


第六步:重启dm master 和worker
接着就出现文章最开始,问题描述的现象。任务状态显示running,但其实不应用binlog

  1. query-status 查询结果中:
sync 下的  "syncerBinlog": "(bin.000001, 2525)",  表示已被 `Sync` 处理单元同步的 binlog position。

relaystatus 下的  "masterBinlog": "(bin.000001,3234)", 表示上游数据库的 binlog position。

一般情况下,不建议手动修改 checkpoint 系统表的信息。query-status 查询结果的含义请参考一下下面的链接:

  1. 因为同步的 checkpoint 手动修改过系统表,所以这边建议重新做一次全量+增量的同步。

  2. 如果是配置完成,并且 start task 后,数据仍然没有同步,请上传 query-status 结果,task yaml 文件,以及 dm-worker 的 log,这边再看下~~

谢谢,只能再做一次全量解决。

:ok_hand: