dm启动报错

【 TiDB 使用环境】生产环境 /测试/ Poc
【 TiDB 版本】
【复现路径】做过哪些操作出现的问题
【遇到的问题:问题现象及影响】
【资源配置】进入到 TiDB Dashboard -集群信息 (Cluster Info) -主机(Hosts) 截图此页面
【附件:截图/日志/监控】

binlog 名字写错了,或者已经被删除了,去对比下你配置中的binlog和文件系统上的binlog

配置中的binlog 从哪里查? 是 dm 数据源还是 worker?


binlog 被刷新了,需要重新同步;但是 sync 如何清除掉?

下游的存checkpoint的表删掉,是在你配置文件配置的,注意别删成别的同步链路的了,然后再重建就好了

不知道怎么操作,麻烦指导一下,谢谢

DM配置文件中配置了存储dm元信息的库,库里有task name开头的表,记录checkpoint等信息,这些checkpoint表等信息比你配置文件中的优先级高,所以如果之前残留这些表,要清理这些表才能让点位使用你新配置文件中的点位。
第一种是手工清理下游的meta表,例如下面的这个就是dm_meta库中以test开头的表删掉,如果有其他dm task共用一个meta库,注意别删错了

name: test                      # 任务名称,需要全局唯一
task-mode: all                  # 任务模式,可设为 "full" - "只进行全量数据迁移"、"incremental" - "Binlog 实时同步"、"all" - "全量 + Binlog 实时同步"
shard-mode: "pessimistic"       # 任务协调模式,可选的模式有 ""、"pessimistic、"optimistic"。默认值为 "" 即无需协调。如果是分库分表合并任务,请设置为悲观协调模式 "pessimistic"。
                                # 在 v2.0.6 版本后乐观模式逐渐成熟,深入了解乐观协调模式的原理和使用限制后,也可以设置为乐观协调模式 "optimistic"
strict-optimistic-shard-mode: false # 仅在乐观协调模式下生效,限制乐观协调模式的行为,默认值为 false。在 v7.2.0 中引入,详见 https://docs.pingcap.com/zh/tidb/v7.2/feature-shard-merge-optimistic
meta-schema: "dm_meta"          # 下游储存 `meta` 信息的数据库
# timezone: "Asia/Shanghai"     # 指定数据迁移任务时 SQL Session 使用的时区。DM 默认使用目标库的全局时区配置进行数据迁移,并且自动确保同步数据的正确性。使用自定义时区依然可以确保整个流程的正确性,但一般不需要手动指定。

第二种就是创建task时额外加参数,让它自动删除meta,参考https://docs.pingcap.com/zh/tidb/stable/dm-create-task

remove-meta:
可选
如果设置,则在启动指定任务时会移除该任务之前存在的 metadata
1 个赞

采用第二种方式解决问题,谢谢

解决了就好

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