数据库同步中间件

AE86 dfdef1a974 fix 3 роки тому
dbsyncer-biz dfdef1a974 fix 3 роки тому
dbsyncer-cache 579067bcaa upgrade version 3 роки тому
dbsyncer-cluster 579067bcaa upgrade version 3 роки тому
dbsyncer-common 579067bcaa upgrade version 3 роки тому
dbsyncer-connector e2a5072ac5 fix closed conn 3 роки тому
dbsyncer-listener 579067bcaa upgrade version 3 роки тому
dbsyncer-manager 579067bcaa upgrade version 3 роки тому
dbsyncer-monitor dfdef1a974 fix 3 роки тому
dbsyncer-parser 579067bcaa upgrade version 3 роки тому
dbsyncer-plugin 579067bcaa upgrade version 3 роки тому
dbsyncer-storage 579067bcaa upgrade version 3 роки тому
dbsyncer-web dfdef1a974 fix 3 роки тому
.gitignore 1cb24567f9 add plugins 4 роки тому
LICENSE c8bef651e7 init 5 роки тому
README.md 2b55c6667e rm 3 роки тому
build.cmd 00a103ca4d build cmd 4 роки тому
build.sh 226b24b80f fix shell 4 роки тому
pom.xml 579067bcaa upgrade version 3 роки тому
version.cmd 579067bcaa upgrade version 3 роки тому

README.md

介绍

DBSyncer是一款开源的数据同步软件,提供Mysql、Oracle、SqlServer、SQL结果集等场景,支持自定义同步转换业务。

特点

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

应用场景

Every point is a DataBase 目标源
全量 增量
Mysql Oracle SQLServer Mysql Oracle SQLServer
数据源 Mysql
Oracle
SQLServer
DQLMysql
DQLOracle
DQLSQLServer
版本支持 Mysql 5.7.19以上
Oracle 10g以上(Oracle-9i未测试)
SQLServer 2008以上
最近计划 kafka、es、postgrep

安装说明

准备

  1. DBSyncer-1.0.0-Alpha.zip(安装包)
  2. JRE 1.8 +

步骤

  1. 安装JRE1.8版本以上(省略详细)
  2. 下载安装包DBSyncer-X.X.X-RELEASE.zip
  3. 解压,进入目录bin,启动脚本startup.bat(Windows)/startup.sh(Linux)
  4. 打开浏览器,输入访问地址:http://127.0.0.1:18686
  5. 默认账号和密码:admin/admin

增量同步配置

类型 配置 原理

Mysql

开启Binlog功能,my.ini配置:

# 服务唯一ID

server_id=1

log-bin=mysql_bin

binlog-format=ROW

max_binlog_cache_size = 256M

max_binlog_size = 512M

expire_logs_days = 7

# 多个库使用英文逗号“,”拼接

replicate-do-db=test

Dump Binlog二进制日志。Master同步Slave, 创建IO线程读取数据,写入relaylog,基于消息订阅捕获增量数据。

Oracle

授予账号监听权限:

grant change notification to AE86

要求目标源表必须定义一个长度为18的varchar字段,用于接收rowid值,来实现增删改操作

CDN注册订阅。监听增删改事件,得到rowid,根据rowid执行SQL查询,得到变化数据

SQLServer

开启CDC:

要求2008版本以上, 启动代理服务(Agent服务), 连接账号具有 sysadmin 固定服务器角色或 db_owner 固定数据库角色的成员身份。对于所有其他用户,具有源表SELECT 权限;如果已定义捕获实例的访问控制角色,则还要求具有该数据库角色的成员身份。

SQL Server 2008提供了内建的方法变更数据捕获(Change Data Capture 即CDC)以实现异步跟踪用户表的数据修改

Mysql增量示例

Oracle增量示例

定时示例

预览

流程图

使用说明

驱动管理

  1. 创建一个连接器。选择数据源类型,比如:Mysql,填写配置,保存
  2. 添加驱动。配置数据源和目标源(数据源:数据的发送端,目标源:数据接收端),保存
  3. 模式支持全量同步(默认:全量复制)和增量同步(监听变化的数据)
  4. 基本配置里面,添加映射关系。添加数据源表同步到目标源表关系
  5. 单击映射关系,进入表字段详细页面,默认匹配相识字段,识别主键(主键用于增量同步,更新和删除使用),保存
  6. 高级配置省略
  7. 点击驱动右上角齿轮按钮,启动或删除
  8. 驱动面板下方显示同步的详细,如果有异常日志,点击日志可跳转至监控菜单查看详细

监控

  1. 查看驱动同步数据
  2. 查看系统性能指标
  3. 查看系统操作日志

其他

  1. 参数>修改系统参数
  2. 参数>修改管理员密码
  3. 注销

开发框架版本

  1. JDK - 1.8.0_40 (推荐版本及以上)
  2. Maven - 3.3.9
  3. Spring Boot - 2.1.8.RELEASE
  4. Bootstrap - 3.3.4

欢迎加群

QQ群: 875519623 或点击右侧按钮 数据同步dbsyncer