多个数据库之间数据同步问题

场景:在不同的地方都各有一个数据库的数据,需要把他们的数据全部都同步到一个云端的数据库

我目前的方法是用spring boot 程序,根据程序运行是的时间为起始值,每隔5分钟循环一次,然后上传起始值到循环时是这五分钟的数据,结束时在重新把现在的时间赋值个起始值,用来保证数据没有重复,同步的表有时间这个属性。

请问还有没有更好的方法去实现呢?请各位大佬指点下

我这边有两种解决方案:

1.在表中添加触发器,每次增、删、改 语句都统一写入 tb_log表中,把每个五分钟扫描tb_log表来执行数据

2.阿里巴巴有一个canal组件是做数据同步 github: https://github.com/alibaba/canal 

希望对你有帮助

这种场景可以使用阿里的dts数据同步服务同步不同数据源或者相同数据源之间的数据、或者使用开源框架搭建自己的数据同步服务

如阿里的DataX、canal、yugong等数据同步和迁移中间件、根据不同的数据源和同步场景选择