TiDB Binlog 版本升级方法
本文介绍通过手动部署的 TiDB Binlog 的版本升级方法,另外有一小节介绍如何从更早的不兼容版本(Kafka/Local 版本)升级到最新版本。
对集群里的每个 Pump 逐一升级,确保集群中总有 Pump 可以接收 TiDB 发来的 Binlog。
- 重启 Pump 进程
- 用新版本的 替换原来的文件
- 重启 Drainer 进程
从 Kafka/Local 版本升级到 Cluster 版本
新版本的 TiDB(v2.0.8-binlog、v2.1.0-rc.5 及以上版本)不兼容 Kafka 版本以及 的 TiDB Binlog,集群升级到新版本后只能使用 Cluster 版本的 TiDB Binlog。如果在升级前已经使用了 Kafka/Local 版本的 TiDB Binlog,必须将其升级到 Cluster 版本。
TiDB Binlog 版本与 TiDB 版本的对应关系如下:
如果能接受重新导全量数据,则可以直接废弃老版本,按 中的步骤重新部署。
如果想从原来的 checkpoint 继续同步,使用以下升级流程:
部署新版本 Pump。
暂停 TiDB 集群业务。
TiDB 集群重新接入业务。
确认老版本的 Drainer 已经将老版本的 Pump 的数据完全同步到下游。
查询 Drainer 的 接口,示例命令如下:
如果返回的 为 true,则可以认为 Binlog 数据已经全部同步到了下游。
下线老版本的 Pump、Drainer 以及依赖的 Kafka 和 ZooKeeper。