DBSyncer是一款开源的数据同步中间件,提供MySQL、Oracle、SqlServer、PostgreSQL、Elasticsearch(ES)、Kafka、File、SQL等同步场景。
支持上传插件自定义同步转换业务,提供监控全量和增量数据统计图、应用性能预警等。
特点
- 组合驱动 ,自定义库同步到库组合,关系型数据库与非关系型之间组合,任意搭配表同步映射关系
- 实时监控 ,驱动全量或增量实时同步运行状态、结果、同步日志和系统日志
- 开发插件 ,自定义转化同步逻辑
设计
架构图
基于 Spring Boot + MyBatis Plus + Vue & Element 实现的后台管理系统 + 用户小程序,支持 RBAC 动态权限、多租户、数据权限、工作流、三方登录、支付、短信、商城等功能
应用场景
| 连接器 | 数据源 | 目标源 | 支持版本(包含以下) |
| MySQL | ✔ | ✔ | 5.7.19以上 |
| Oracle | ✔ | ✔ | 10gR2 -11g |
| SqlServer | ✔ | ✔ | 2008以上 |
| PostgreSQL | ✔ | ✔ | 9.5.25以上 |
| ES | ✔ | ✔ | 6.0以上 |
| Kafka | 开发中 | ✔ | 2.10-0.9.0.0以上 |
| File | ✔ | ✔ | *.txt, *.unl |
| SQL | ✔ | 支持以上关系型数据库 | |
| 后期计划 | Redis |
基于 Spring Cloud Alibaba + Gateway + Nacos + RocketMQ + Vue & Element 实现的后台管理系统 + 用户小程序,支持 RBAC 动态权限、多租户、数据权限、工作流、三方登录、支付、短信、商城等功能
使用教程
1.启动 代理 和 数据库 服务
2.准备测试账号,test
3.分配sysadmin角色
4.分配指定数据库权限
PostgreSQL
通过复制流技术监听增量事件,基于内置插件pgoutput、test_decoding实现解析wal日志
1、修改postgresql.conf文件,重启服务
wal_level=logical
2、授予账号权限LOGIN和REPLICATION
File
监听文件修改时间得到变化文件,通过文件偏移量读取最新数据
ES
- 定时获取增量数据。
- 账号具有访问权限。
日志
建议MySQL、SqlServer、PostgreSQL都使用日志
定时
假设源表数据格式
预览
驱动管理
驱动详情
驱动表字段关系配置
监控
上传插件












