例如:两个数据库中的相对应的A和B的主键是对应的,如果删除A表的一条数据,同步的时候如何让B张表也对应的删除那一条据(而不是根据B表又将那一条数据插入到A表中)
求大神给个思路啊!!
一个问题问两次。。。
我只是想知道怎么判断应该插入还是删除
@河流小鱼儿: 另一个问题有个人回答了,对操作进行记录,你写的时候,应该是没有统一处理的吧。如果写是独立写的,那么就是两个系统,为什么还要数据同步呢?如果是一个系统,为什么不做数据统一读写呢?
oracle数据库有一个关键字叫做rac
大神,你能不能个i详细讲解一下,没接触过你说的RAC知识,谢谢
消息队列,触发器
能不能,详细讲解一下怎么使用,谢谢
看到你在做两个数据库之间的数据同步,表结构一样的情况下确实有很多方案可以选择。上面提到的几种方案都不错,如果想找一个更简单、更通用的方案,可以试试 SeaTunnel。
SeaTunnel 是一个开源的数据集成平台,在数据库同步场景下有几个优势:
配置简单
通过配置文件就能定义数据同步任务,不需要写复杂的 Java 代码。比如从 MySQL 同步到另一个 MySQL,配置一下 source 和 sink 就能运行。
支持多种同步模式
支持多种数据库
MySQL、Oracle、SQL Server、PostgreSQL 等主流数据库都支持,可以灵活选择源端和目标端。
性能好
基于分布式引擎,可以并行处理数据,同步速度快。
支持断点续传
任务中断后可以从上次的位置继续同步,不会重复同步数据。
基本使用流程:
对于你这种两个数据库表结构一样的场景,SeaTunnel 配置起来非常简单,基本上改一下数据库连接信息就能用。
官网地址:https://seatunnel.apache.org 上面有详细的文档和配置示例,可以参考一下。
上面提到的方案各有优势,可以根据你的具体需求选择。如果你希望方案更通用、配置更简单,SeaTunnel 是个不错的选择。