tidb3.0 的某表数据如何实时同步到 tidb6.1环境?

谢谢,我去试试看

没事~ 一起学习~

官方不是说可以从3.0.x 升级到4.0.x
然后从4.0.x 升级到6.1.x

你说的是tidb 版本升级吗? 版本跨度太大,生产环境不会直接这么去搞的拉~

3.0没搞过,我上周五刚刚把v4.0.11 升级到 v6.5.1,目前没发现啥大问题,官档都不相信了,你还能相信谁呢?
8d1f0eb612cc4538d845016bbdb84c48

额,咱俩说的问题不是同一个方向

  1. Pump 在tidb3 环境中安装和开启
  2. 用dumpling 下载 X表的当前数据备份,记录ts值,并在新tidb6 环境中lighting还原数据备份
  3. Drainer 在tidb3 环境中安装,initial_commit_ts 为第二步的ts值
  4. 修改Drainer 的配置文件,配置 db-type = “tidb”, [syncer.to] 以及 [[syncer.replicate-do-table]] 为单库单表
  5. 等第2步 的备份还原完毕之后,部署 Drainer + 开启 Drainer
  6. 结束

你好~ 按这样的步骤对吗?

没问题,pump和drainer都是部署在上游
1.修改 inventory.ini 文件 , 添加 Pump 的配置,开启 enable_binlog 开关
2.使用 ansible 部署 Pump
ansible-playbook deploy.yml --tags=pump
3.用 ansible 启动 Pump
ansible-playbook start.yml --tags=pump
4.确认 Pump 已经正常启动
5.更新并重启 TiDB servers
ansible-playbook rolling_update.yml --tags=tidb
6.备份恢复至目标集群
7.修改 tidb-ansible/inventory.ini 文件 , 添加 Drainer 的配置
8.修改drainer配置文件
9.部署drainer
ansible-playbook deploy_drainer.yml
10.启动drainer
ansible-playbook start_drainer.yml
11.更新监控
ansible-playbook rolling_update_monitor.yml --tags=prometheus

1 个赞

建好表结构 然后kettle 抽数呢? 有停机窗口可以让数据补齐吗? 如果有停机窗口的话可以试试


为啥我的drainer 一直在启动状态?

而且内存占用这么大?!

这个是啥意思,启动后数据有正常同步吗

就是内存一直涨,涨到后来内存不够了,然后一直在重启,但是没有报错日志,也看不出什么进度了。。。端口也一直没监听,感觉死路一条了

不升级干嘛呢?何必纠结这么老的版本,不管你是不是要同步数据,都应该升级了。

我同步的是没倒是没遇到这个问题,3.0早就不维护了,估计无解了~

我是做的迁移,业务从老环境迁移到新版本环境,有什么问题么?

你还原的那个备份,是整个集群的全备,还是单库单表的备份?

我是全库的,最终目的是升级,切换到新集群,3.0确实太老了,出问题都不好排查

难道问题就是 我还原的是单表的? 你还原的是全库的? 全库我是基本上不太可能了。。。太大了

请问你开了几个pump 和drainer?