Thanks to visit codestin.com
Credit goes to Github.com

Skip to content
/ dbsyncer Public

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

License

Notifications You must be signed in to change notification settings

86dbs/dbsyncer

Repository files navigation

介绍

logo

DBSyncer(英[dbsɪŋkɜː(r)],美[dbsɪŋkɜː(r) 简称dbs)是一款开源的数据同步中间件,提供MySQL、Oracle、SqlServer、PostgreSQL、Elasticsearch(ES)、Kafka、File、SQL等同步场景。支持上传插件自定义同步转换业务,提供监控全量和增量数据统计图、应用性能预警等。

特点

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

项目地址

star fork license

🌈应用场景

连接器 数据源 目标源 支持版本(包含以下)
MySQL 5.7.19以上
Oracle 10g-19c
SqlServer 2008以上
PostgreSQL 9.5.25以上
ES 6.0.0-8.15.3
Kafka 开发中 2.10-0.9.0.0以上
File *.txt, *.unl
SQL 支持以上关系型数据库
Sqlite
后期计划 Redis

✨预览

连接器和驱动

监控

📦安装配置

方式一 下载安装包

  1. 安装JDK 1.8(省略详细)
  2. 下载安装包dbsyncer-x.x.x.zip(也可手动编译)
  3. 解压安装包,Window执行bin/startup.bat,Linux执行bin/startup.sh
  4. 打开浏览器访问:http://127.0.0.1:18686
  5. 账号和密码:admin/admin

方式二 🐳 docker

  • 阿里云镜像
# 社区版
docker pull registry.cn-hangzhou.aliyuncs.com/xhtb/dbsyncer:latest
# 专业版
docker pull registry.cn-hangzhou.aliyuncs.com/xhtb/dbsyncer-enterprise:latest
  • 运行命令
docker run -d \
  --name=dbsyncer \
  --restart=unless-stopped \
  -p 18686:18686 \
  -e TZ="Asia/Shanghai" \
  -m 5g \
  --memory-swap=5g \
  -v /opt/dbsyncer/data:/app/dbsyncer/data \
  -v /opt/dbsyncer/logs:/app/dbsyncer/logs \
  -v /opt/dbsyncer/plugins:/app/dbsyncer/plugins \
  --log-driver json-file \
  --log-opt max-size=100m \
  --log-opt max-file=7 \
  registry.cn-hangzhou.aliyuncs.com/xhtb/dbsyncer:latest

# 本地日志
ls -la /opt/dbsyncer/logs

# 容器日志
docker logs --tail 20 dbsyncer
# 容器实时日志(Ctrl+C退出)
docker logs -f dbsyncer
# 进入容器内部
docker exec -it dbsyncer /bin/bash
# 查看容器日志
ls -la /app/dbsyncer/logs

# 停止容器
docker stop dbsyncer
# 启动容器
docker start dbsyncer
# 重启容器
docker restart dbsyncer
# 删除容器(需先停止)
docker rm dbsyncer

⚙️手动编译

先确保环境已安装JDK和Maven

$ git clone https://gitee.com/ghi/dbsyncer.git
$ cd dbsyncer
$ chmod u+x build.sh
$ ./build.sh

全量同步

系统 机器配置 数据量 耗时
Mac Apple M3 Pro 12核心 内存18GB 1亿条 31分50秒
Linux Intel(R) Xeon(R) CPU E5-2696 v3B 8核心 内存48GB 1亿条 37分52秒
Windows AMD Ryzen 7 5800x 8核心 12GB 1亿条 57分43秒

增量同步

系统 机器配置 分配内存 TPS 峰值
Mac Apple M3 Pro 12核心 内存18GB 4GB 8112/秒 11000/秒
Linux Intel(R) Xeon(R) CPU E5-2696 v3B 8核心 内存48GB 4GB 8000/秒 10000/秒
Windows AMD Ryzen 7 5800x 8核心 12GB 4GB 7553/秒 9000/秒

专业版介绍

🤝贡献支持

  • DBS团队目标:坚持开源,让每一个用户都能轻松完成数据同步!
  • QQ群讨论: 875519623
  • 欢迎大家提需求和建议【新建issuses】!(详细描述你的原始需求,我们会帮你提供一些方案,节约大家的成本)
  1. 内推项目 如您觉得项目不错,可推荐到公司,建立长期稳定的商业合作,提供更专业的技术服务。(入群联系群主)
  2. 参与开发 项目成员有不同专业的大佬,相信一定能找到您比较感兴趣的方向,欢迎加入团队!(入群联系群主)
  3. 需要专业技术指导,欢迎加 会员粉丝服务群
  4. 开源不易,感谢粉丝朋友们的支持!【捐赠者名单】

About

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

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 9