⭐⭐⭐ 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. 开源地址