业务上tidb的回滚方案

【 TiDB 使用环境】生产环境
【 TiDB 版本】v8.1.0
【遇到的问题:问题现象及影响】
业务从mysql迁移到tidb,使用dts,将数据全量+增量的同步到tidb数据库,但是做回退方案,将数据从tidb同步到mysql,DTS增量同步遇到了问题,找阿里官方咨询,需要搭建一套pump集群,看官方文档, * 从 TiDB v7.5.0 开始,TiDB Binlog 组件的数据同步功能不再提供技术支持,这就很尴尬。

想问问大家,在做回退方案,都是怎么做的。

TiDB 同步到 Mysql 可以使用 TiCDC 参考:https://docs.pingcap.com/zh/tidb/v6.5/ticdc-overview

这个思考过,考虑先配置ticdc,然后暂停ticdc,清理目标库的数据,再使用dts全量同步数据,然后再启动ticdc做增量同步。但是这里,有比较特殊的情况,源和目标的字段名称不一致的情况。

阿里的dts支持pump?

那同步到 kafka 吧,自己写消费端同步

DTS可以从kafka去消费

根据我们迁移经验,tidb的数据增量回到mysql,用的是https://www.clougence.com/ 这个工具。满足表结构不一样的情况。你可以试试,不知道是否支持最新的tidb8.1。我们从切换那一刻开始就已经不想再回去了。
建议你搭建一个tidb的从中心。tidb 主从 主用来满足业务应用针对TP业务,从库的话满足AP业务做分析使用。主从通过ticdc实现。
专栏 - TIDB数据库在某省妇幼业务系统应用 | TiDB 社区 这是我们业务迁移后写的一篇专栏。

搭建灾备tidb,目前成本有点高,等后面业务用的多了之后,再搭建主从复制结构

ticdc加kafka flink 再到mysql

ticdc到新实例,回滚直接滚到新实例不就行了 :sweat_smile:。新实例账户权限,安全组信息从主mysql 那边拿,数据从tidb 这边回流回来