DBSyncer 一款开源的数据同步中间件

DBSyncer是一款开源的数据同步中间件,提供Mysql、Oracle、SqlServer、Elasticsearch(ES)、Kafka、SQL(Mysql/Oracle/SqlServer)等同步场景。支持上传插件自定义同步转换业务,提供监控全量和增量数据统计图、应用性能预警等。

开源精选》是我们分享Github、Gitee等开源社区中优质项目的栏目,包括技术、学习、实用与各种有趣的内容。本期推荐的 DBSyncer是一款开源的数据同步中间件

项目介绍
DBSyncer是一款开源的数据同步中间件,提供Mysql、OracleSqlServerElasticsearch(ES)、KafkaSQL(Mysql/Oracle/SqlServer)等同步场景。支持上传插件自定义同步转换业务,提供监控全量和增量数据统计图、应用性能预警等。

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

安装JDK 1.8(省略详细)
• 下载安装包DBSyncer-1.0.0-Beta.zip
• 解压安装包,Window执行bin/startup.bat,Linux执行bin/startup.sh
• 打开浏览器访问:http://127.0.0.1:18686
• 账号和密码:admin/admin
增量同步配置(源库)

Mysql

• Dump Binlog二进制日志。Master同步Slave, 创建IO线程读取数据,写入relaylog,基于消息订阅捕获增量数据。
• 配置
修改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

Oracle

• CDN注册订阅。监听增删改事件,得到rowid,根据rowid执行SQL查询,得到变化数据。
• 授予账号监听权限, 同时要求目标源表必须定义一个长度为18的varchar字段,通过接收rowid值实现增删改操作。

grant change notification to 你的账号

定时

DBSyncer 一款开源的数据同步中间件
假设源表数据格式

DBSyncer 一款开源的数据同步中间件

预览

DBSyncer 一款开源的数据同步中间件
驱动管理

DBSyncer 一款开源的数据同步中间件

DBSyncer 一款开源的数据同步中间件
驱动表字段关系配置

DBSyncer 一款开源的数据同步中间件

更多内容:https://gitee.com/ghi/dbsyncer

Intoep小程序

微信扫一扫,打开小程序浏览更便捷

转载作品,原作者:GitHub精选,文章来源:https://www.toutiao.com/i7068227625247867431

发表回复

登录后才能评论