⭐⭐⭐ Spring Boot 项目实战 ⭐⭐⭐ Spring Cloud 项目实战
《Dubbo 实现原理与源码解析 —— 精品合集》 《Netty 实现原理与源码解析 —— 精品合集》
《Spring 实现原理与源码解析 —— 精品合集》 《MyBatis 实现原理与源码解析 —— 精品合集》
《Spring MVC 实现原理与源码解析 —— 精品合集》 《数据���实体设计合集》
《Spring Boot 实现原理与源码解析 —— 精品合集》 《Java 面试题 + Java 学习指南》

摘要: 原创出处 gitee.com/ghi/dbsyncer 「dbsyncer」欢迎转载,保留摘要,谢谢!


🙂🙂🙂关注**微信公众号:【芋道源码】**有福利:

  1. RocketMQ / MyCAT / Sharding-JDBC 所有源码分析文章列表
  2. RocketMQ / MyCAT / Sharding-JDBC 中文注释源码 GitHub 地址
  3. 您对于源码的疑问每条留言将得到认真回复。甚至不知道如何读源码也可以请教噢
  4. 新的源码解析文章实时收到通知。每周更新一篇左右
  5. 认真的源码交流微信群。

DBSyncer是一款开源的数据同步中间件,提供MySQLOracleSqlServerPostgreSQLElasticsearch(ES)KafkaFileSQL等同步场景。

支持上传插件自定义同步转换业务,提供监控全量和增量数据统计图、应用性能预警等。

特点

  • 组合驱动,自定义库同步到库组合,关系型数据库与非关系型之间组合,任意搭配表同步映射关系
  • 实时监控,驱动全量或增量实时同步运行状态、结果、同步日志和系统日志
  • 开发插件,自定义转化同步逻辑

设计

架构图

应用场景

连接器 数据源 目标源 支持版本(包含以下)
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

使用教程

1.启动 代理 和 数据库 服务

2.准备测试账号,test

3.分配sysadmin角色

4.分配指定数据库权限

PostgreSQL

通过复制流技术监听增量事件,基于内置插件pgoutputtest_decoding实现解析wal日志

1、修改postgresql.conf文件,重启服务

wal_level=logical

2、授予账号权限LOGINREPLICATION

File

监听文件修改时间得到变化文件,通过文件偏移量读取最新数据

  • https://gitee.com/ghi/dbsyncer/issues/I55EP5

ES

  • 定时获取增量数据。
  • 账号具有访问权限。

日志

建议MySQL、SqlServer、PostgreSQL都使用日志

定时

假设源表数据格式

预览

驱动管理

驱动详情

驱动表字段关系配置

监控

上传插件

开源地址

  • https://gitee.com/ghi/dbsyncer
文章目录
  1. 1. 特点
  • 设计
  • 应用场景
  • 使用教程
    1. 1. PostgreSQL
    2. 2. File
    3. 3. ES
    4. 4. 日志
    5. 5. 定时
  • 预览
    1. 1. 开源地址