Dromara 社区新晋开源项目 dbswitch,异构数据库迁移同步工具!
一个适用于异构数据库迁移同步的简单工具dbswitch
作者介绍
- 网名:三胖(inrgihc)
- dromara 开源组织成员,项目dromara/dbswitch作者
- 项目地址:https://gitee.com/dromara/dbswitch
dbswitch的诞生
你需要将Oracle等老牌数据库中的数据一键搞到MySQL或PostgreSQL中么?你需要将MySQL等关系型数据库中的数据一键搞到Greenplum/ClickHouse等OLAP数据库中进行分析么?
如果你在工作中遇到与我同样的需求,那么不妨体验下dbswitch工具。
dbswitch是在数据库间数据搬迁和数据入仓入湖这两大背景环境下诞生的,虽然目标路程还很长,但是dbswitch作为一款开源工具会一直再努力坚持着(也许各个数据库厂商都有自己的专业迁移工具)。
dbswitch的功能
简言之,dbswitch提供源端数据库向目的端数据库的批量迁移同步功能:
- 结构迁移:
(1)支持字段类型、主键信息、建表语句等的转换,并生成建表SQL语句。
(2)支持基于正则表达式转换的表名与字段名映射转换。
- 数据同步:
(1)基于JDBC的分批次读取源端数据库数据,并基于jdbc(insert/copy方式)将数据分批次写入目的数据库。
(2)支持有主键表(基于数据比对变化计算原理的)增量变更(insert/update/delete)同步功能
dbswitch支持的数据库
当前基于驱动隔离已经集成支持多版本的数据库产品如下:
- 甲骨文的Oracle
- 微软的Microsoft SQLServer
- MySQL/MariaDB
- PostgreSQL
- Greenplum(需使用PostgreSQL类型)
- IBM的DB2
- Sybase数据库
- 国产达梦数据库DMDB
- 国产人大金仓数据库Kingbase8
- 国产翰高数据库HighGo
- 国产神通数据库Oscar
- 国产南大通用数据库GBase8a
- Apache Hive(基于JdbcStorageHandler)
- SQLite3
- OpenGuass
- ClickHouse
- MongoDB
dbswitch的部署体验
1.一键部署
- 基于docker-compose的一键安装(或升级):
curl -sSL https://gitee.com/inrgihc/dbswitch/attach_files/1551962/download | sh
- 基于docker的一键安装:
假设已经部署好的MySQL数据库地址为192.168.31.57,端口为3306,账号为test,密码为123456
docker run -d --name dbswitch \\ -e MYSQLDB_HOST=192.168.31.57 \\ -e MYSQLDB_PORT=3306 \\ -e MYSQLDB_USERNAME=test \\ -e MYSQLDB_PASSWORD='123456' \\ -v /tmp:/tmp \\ -p 9088:9088 \\ registry.cn-hangzhou.aliyuncs.com/inrgihc/dbswitch:1.8.2
2.部分截图
- 二次集成开发
dbswitch也支持java下二次集成开发,具体可查看dbswitch项目中的文档说明。
关注dbswitch
欢迎体验使用dbswitch工具,同时项目中也提供了dbswitch相关的实现原理。
友情项目
[1] Greenplum一键安装
[2] 新闻文章正文抽取正文抽取组件

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
Numbat —— 用于科学计算的静态类型编程语言
Numbat 是一种用于科学计算的静态类型编程语言,对物理尺寸和单位具有一流的支持。 可以使用它进行简单的数学计算: >>> 1920/16*9 = 1080 >>> 2^32 = 4294967296 >>> sqrt(1.4^2 + 1.5^2) * cos(pi/3)^2 = 0.512957 然而,Numbat 的真正优势在于使用物理单位执行计算: >>> 8 km / (1 h + 25 min) 8 kilometer / (1 hour + 25 minute) = 5.64706 km/h [Velocity] >>> 140 € -> GBP 140 euro ➞ british_pound = 120.768 £ [Money] >>> atan2(30 cm, 1 m) -> deg atan2(30 centimeter, 1 meter) ➞ degree ...
- 下一篇
Fish Shell 采用 Rust 重写会导致性能下降
fish 是适用于 Linux、macOS 的命令行 Shell,其名字取于 "thefriendlyinteractiveshell" 的简称,最大特点就是方便易用、功能强大、智能并且用户友好。很多其他 Shell 需要配置才有的功能,fish 默认提供,不需要任何配置。 项目维护者 Fabian Boehm 今天在 GitHub 回应了使用 Rust 重写 Fish Shell的进度,称已几乎完成。 根据开发者的说法,他们已经完成了从 C++ 到 Rust 的大部分移植工作,但还有一些剩余的组件需要进行翻译。目前,他们正在处理与输入系统相关的读取器、屏幕处理、输入和分页器等强耦合组件。一旦这些组件完成翻译,剩下的工作就是一些零散的部分和去除构建系统的 C++ 依赖。 开发者表示,这不是一个适合临时贡献的项目,因为还有很多工作要做。 此外,开发者还回答了一些关于移植的问题和误解。他们表示不会删除所有的 C++ 代码,也没有计划移植到 Windows 平台。他们还表示不会更改 Fish Shell 的名称或吉祥物,并且对于最终移植的性能,他们表示早期结果是令人鼓舞的,但可能在某些情况下...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- SpringBoot2全家桶,快速入门学习开发网站教程
- Springboot2将连接池hikari替换为druid,体验最强大的数据库连接池
- Eclipse初始化配置,告别卡顿、闪退、编译时间过长
- Docker快速安装Oracle11G,搭建oracle11g学习环境
- 2048小游戏-低调大师作品
- SpringBoot2更换Tomcat为Jetty,小型站点的福音
- CentOS8,CentOS7,CentOS6编译安装Redis5.0.7
- CentOS7,8上快速安装Gitea,搭建Git服务器
- CentOS6,CentOS7官方镜像安装Oracle11G
- CentOS关闭SELinux安全模块