误删 xxx_syncer_checkpoint 表数据,导致同步中断

为提高效率,提问时请提供以下信息,问题描述清晰可优先响应。

  • 【TiDB 版本】:4.0.1-hostfix
  • 【问题描述】:不小心误删 xxx_syncer_checkpoint 表数据,导致同步中断

在上游数据切换的过程中,不小心误清了对应库 的 syncer_checkpoint 表记录,目前start-task 无效。
如何可以指定syncer同步的位置


若提问为性能优化、故障排查类问题,请下载脚本运行。终端输出的打印结果,请务必全选并复制粘贴上传。

hotfix 是否为官方提供的?

该表创建在下游 tidb 数据中,先调整 gc 时间,避免表数据被 gc 掉。
并参考下面办法进行恢复。
https://docs.pingcap.com/zh/tidb/stable/sql-statement-recover-table

已经过了gc时间。。。

现在情况是task启动不了,是否有方式可以强制指定复制的位置?

dm 版本是v1.0.4-hotfix 官方的

你好,我尝试以下方式指定位置同步解决:
1、移除 dm_worker_meta目录下所有文件
2、重启dm-worker
3、task.yaml 中手动指定 meta 一个较早时间点的位置
4、task.yaml 中syncer safe-mode 配置为true
5、启动 task

nice,基本思路就是保证指定的位点信息在丢失位点信息之前,并开启 safe mode 进行同步,大致同步过了丢失的 pos 位置,关闭 safe mode 即可。

此话题已在最后回复的 1 分钟后被自动关闭。不再允许新回复。