Dromara 社区新晋开源项目 dbswitch,异构数据库迁移同步工具!

一个适用于异构数据库迁移同步的简单工具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] 新闻文章正文抽取正文抽取组件

优秀的个人博客,低调大师

微信关注我们

原文链接:https://www.oschina.net/news/268303

转载内容版权归作者及来源网站所有!

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。

相关文章

发表评论

资源下载

更多资源
Mario,低调大师唯一一个Java游戏作品

Mario,低调大师唯一一个Java游戏作品

马里奥是站在游戏界顶峰的超人气多面角色。马里奥靠吃蘑菇成长,特征是大鼻子、头戴帽子、身穿背带裤,还留着胡子。与他的双胞胎兄弟路易基一起,长年担任任天堂的招牌角色。

Oracle Database,又名Oracle RDBMS

Oracle Database,又名Oracle RDBMS

Oracle Database,又名Oracle RDBMS,或简称Oracle。是甲骨文公司的一款关系数据库管理系统。它是在数据库领域一直处于领先地位的产品。可以说Oracle数据库系统是目前世界上流行的关系数据库管理系统,系统可移植性好、使用方便、功能强,适用于各类大、中、小、微机环境。它是一种高效率、可靠性好的、适应高吞吐量的数据库方案。

Java Development Kit(Java开发工具)

Java Development Kit(Java开发工具)

JDK是 Java 语言的软件开发工具包,主要用于移动设备、嵌入式设备上的java应用程序。JDK是整个java开发的核心,它包含了JAVA的运行环境(JVM+Java系统类库)和JAVA工具。

Sublime Text 一个代码编辑器

Sublime Text 一个代码编辑器

Sublime Text具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。还可自定义键绑定,菜单和工具栏。Sublime Text 的主要功能包括:拼写检查,书签,完整的 Python API , Goto 功能,即时项目切换,多选择,多窗口等等。Sublime Text 是一个跨平台的编辑器,同时支持Windows、Linux、Mac OS X等操作系统。