关于 MySQL 不同数据库之间数据同步问题

本人想实现一个将 cms 库的数据发布到 interface 库的功能。 因为数据要在 cms 这边做上线、审核, 审核完成之后才能发布到 interface 库。cms 这边有可能有几百万数据要发布, 目前我的解决方案是使用队列。 下面是我目前的做法的说明: 开始发布的时候会先往任务表里面插入一条记录, 里面包含本次任务要发布的数据总量, 之后执行队列的时候用 chunk 分块数据, 每个chunk完成后, 更新下任务表完成的数据量。目前遇到的瓶颈是:使用 chunk , 数据量大了会很卡。请教各位大神, 能否有更多好的方案。谢谢!

《L05 电商实战》
从零开发一个电商项目,功能包括电商后台、商品 & SKU 管理、购物车、订单管理、支付宝支付、微信支付、订单退款流程、优惠券等
《G01 Go 实战入门》
从零开始带你一步步开发一个 Go 博客项目,让你在最短的时间内学会使用 Go 进行编码。项目结构很大程度上参考了 Laravel。
讨论数量: 5

用chunk卡就别用了,一条一条同步呗

6年前 评论

@homer 几百万数据一条条同步? 那要执行几百万条sql了。 我用 chunk 就是想批量执行sql。

6年前 评论

@tiandaye 先别急否定,你先试试单条的效率再说。

6年前 评论
DenverB

试试游标?

6年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!