dbswitch:一款免费开源、功能强大的异构数据库迁移同步工具

dbswitch 是一款免费开源、功能强大的异构数据库迁移同步工具,能够提供源端数据库向目的端数据库的离线批量迁移同步功能,支持数据的全量、增量、变化量方式同步。

dbswitch 项目由开源组织 Dromara 进行维护,主要基于 Java 和 Javascript 开发,遵循 BSD 开源协议,代码托管在 Gitee:

https://gitee.com/dromara/dbswitch

功能特性

  • 跨平台:支持 Linux、Windows、macOS 以及 Docker 等部署。
  • 数据源:包括 MySQL、MariaDB、Oracle、SQL Server、PostgreSQL、达梦、金仓、瀚高、神州通用、南大通用、openGuass、Db2、Dybase、Apache Hive、SQLite、Greenplum、Clickhouse、Starrocks、Doris 、Oceanbase、Mongodb、Elasticsearch,同时支持自定义扩展数据源。
  • Web 操作界面:提供了一个基于 Web 浏览器的管理界面,用户可以方便地进行数据源配置、任务管理和监控调度。
  • 命令操作方式:对于习惯命令行操作的用户,可以通过编辑配置文件直接执行迁移任务,适合迁移表或字段等数量较多的情况。

  • 数据查询:提供表结构查看功能以及一个在线的 SQL 查询页面。

  • 结构迁移:自动将源数据库的表结构(包括字段类型、主键信息等)转换为目标数据库所支持的格式,并且生成相应的 SQL 建表语句;支持基于正则表达式的表名和字段名映射转换,方便在迁移过程中进行规范化处理。
  • 数据同步:基于 JDBC 分批次读取源端数据,并且通过 INSERT 或 COPY 等高效方式将数据批量写入目标数据库。
  • 增量同步:支持对有主键标识的表进行增量数据同步,可以捕获并同步数据的插入、更新和删除操作。
  • 变化量同步:支持有主键表的变化量同步(基于变化数据计算 CDC)功能。注意:千万级以上数据量的性能尚需在生产环境验证。
  • 审计日志:提供用户登录和各种操作的日志记录。
  • 集成开发:支持用户在自己的项目中集成 dbswitch,进行二次开发。

下载安装

多种安装方式,使用 Docker 进行部署的命令如下:

复制代码
docker run -d --name dbswitch  -e DBTYPE=h2  -v /tmp:/tmp  -p 9088:9088 \
  registry.cn-hangzhou.aliyuncs.com/inrgihc/dbswitch:2.0.0

以上命令使用 H2 作为配置库,也可以使用 MySQL 或者 PostgreSQL 作为配置库进行部署。

启动服务之后,通过以下地址访问 Web 管理界面:

http://localhost:9088

初始用户名和密码分别为 admin/123456。

总结

dbswitch 是一款由社区驱动、功能全面的异构数据库迁移同步工具。强大的多数据库支持能力和提供 Web 界面与命令行两种操作模式的特点,使得它可以用于数据搬迁、数据库升级、数据湖仓构建等场景。

相关推荐
Knight_AL7 分钟前
PostgreSQL Docker 数据库备份:pg_dump 与 SQL 格式备份的区别
数据库·docker·postgresql
写后端的胖头鱼8 分钟前
Redis 的 RDB 和 AOF
java·数据库·redis
杨云龙UP14 分钟前
Oracle 19c ADG 实时同步故障排查与修复:Standby Redo Log(SRL)文件缺失导致备库仅在主库归档后同步
数据库·oracle·adg·data guard·srl·ora-00313·ora-27037
步行cgn1 小时前
MySQL 报错:Access denied for user ‘root‘@‘localhost‘ 详解
java·数据库·spring
for_ever_love__2 小时前
Redis 数据类型全景:五种基础类型怎么用、什么时候用
数据库·redis·数据类型·hash·使用场景·zset·排行榜
SmartSoftHelp开发辅助优化2 小时前
SmartSoftHelp DeepCore XSuite Pro Global Eco AIAgent 2026.V29 专业国际版
数据库·oracle
honsor2 小时前
以太网温湿度传感器:RJ45直连机房的环境监控新方案
运维·网络·数据库·物联网·安全·云计算·github
西索斯coding2 小时前
Kimi k2.7-code-highspeed 接入 Cline 教程:baseURL 路由变更 + model_id 正确写法
java·服务器·数据库·ai
浪子明X3 小时前
MongoDB 迁移方案评审:用双写窗口和回放样本控制切换风险
数据库·mongodb
stark张宇3 小时前
InnoDB锁机制全景图:全局锁、表锁、行锁、意向锁到底怎么用?
数据库·后端