首次启用binlog(pump &drainer) 如何设置 initial-commit-ts

【 TiDB 使用环境】生产环境
【 TiDB 版本】v6.1.2
【复现路径】首次安装 pump & drainer
【遇到的问题:问题现象及影响】

集群已经运行了一段时间, 首次启用binlog(pump &drainer) 如何设置 initial-commit-ts 才能将历史的数据都 sync to kafka ?

目前默认值是-1,也就是从当前时间开始sync ,当 drainer online 之后可以看到这样的log:

[2024/07/19 22:47:12.959 +08:00] [WARN] [schema.go:281] ["ddl job schema version is less than current version, skip this ddl job"] [job="ID:84400, Type:update tiflash replica status, State:cancelled, SchemaState:queueing, Sche
maID:86, TableID:82920, RowCount:0, ArgLen:0, start time: 2021-05-27 19:08:09.499 +0800 CST, Err:[ddl:-1]the replica available status of table dws_initiative_marketing_summary_back_test is already updated, ErrCount:1, Snapshot
Version:0"] [currentVersion=0] 

因此怀疑 initial-commit-ts 默认值导致的,如何设置一个足够老的 ts (例如3年前),这样让数据 sync to kafka 中,我这边进行后续处理。

谢谢!

【资源配置】进入到 TiDB Dashboard -集群信息 (Cluster Info) -主机(Hosts) 截图此页面
【附件:截图/日志/监控】

binlog 是从启用时刻开始记录数据变更的,而不是回溯过去的数据。
对于将 TiDB 的历史数据同步到 Kafka 的需求,推荐使用 TiCDC,因为它提供了更灵活和全面的数据同步解决方案,包括初始的全量数据同步和后续的增量数据同步。

1 个赞

3年前的ts肯定早都gc了,可以先全量备份恢复到下游,指定备份文件中的tso 启动drainer,6.5版本之前的增量同步还是建议用binlog,6.5及之后ticdc更好一点

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