# Jync 捷同-异构数据库实时同步工具 **Repository Path**: yafeizz/jync ## Basic Information - **Project Name**: Jync 捷同-异构数据库实时同步工具 - **Description**: Jync 捷同 - 极简、极速的异构数据库实时同步工具。单 JAR 部署,无需 Kafka/Zookeeper,零外部依赖。支持 MySQL、Oracle、PostgreSQL 及众多信创数据库。内置 DDL 自动同步、幂等 upsert、断点续传,内网离线可用。 - **Primary Language**: Java - **License**: MIT - **Default Branch**: main - **Homepage**: https://jync.qqmu.com - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 17 - **Created**: 2026-11-04 - **Last Updated**: 2026-11-04 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # Jync 捷同 · 异构数据库实时同步工具 > **Jync**,读作 "sync" —— **J** 代表 Java;**捷同**:敏捷同步,两库皆同。 > 单 JAR 交付的异构数据库同步引擎:**分块并行的全量、只读零侵入的增量、秒级的日志 CDC**,外加按 SQL 取数的 ETL 与 Webhook 告警。 **简体中文** | [English](README_EN.md) [](LICENSE) [](https://openjdk.org/) [](https://spring.io/projects/spring-boot) [](https://gitee.com/super_rgh/jync) [](https://gitee.com/super_rgh/jync)  在**异构数据库**之间持续同步**结构与数据**的开箱即用 Web 应用:单个 jar 启动,浏览器点选即可在内置的 **34 种数据库(另支持自定义类型)** 之间建立同步或 ETL 链路;搜索与文档型数据另有三条不走 JDBC 的**专属迁移**链路(Elasticsearch / OpenSearch → Easysearch、MongoDB → MongoDB、MongoDB → KingbaseES)。不需要 Kafka、Flink、ZooKeeper,也不需要编写一行作业代码。 - **零外部依赖**:Spring Boot 单体 + Thymeleaf 服务端渲染 + Quartz + H2 内嵌元数据库,内网离线可用。 - **全量不是批量查询导入**:主键 keyset 分块、单表内并行、结果集流式读取、逐块提交与检查点,单表吞吐可达 **20 万行/秒量级**。 - **增量只有一条索引查询**:默认轮询模式只读游标之后的变化,一个只读账号即可;六类源库可切换日志 CDC,做到秒级延迟。 - **结构与数据一起走**:目标库缺失时自动建表 / 索引 / 视图 / 存储过程,内置各方言类型映射与函数转换。 - **可靠续传**:停机、断网、进程被杀都能从检查点继续,写入全部幂等,停机期间源库的变更重启后自动补齐。 - **另有专属迁移**:Elasticsearch / OpenSearch → Easysearch、MongoDB → MongoDB、MongoDB → KingbaseES 三条链路不走 JDBC,用独立的连接模型整库复制索引或集合,与实时同步、ETL 互不影响。 - **出了问题会通知你**:同步失败、CDC 停摆、数据漂移等七类故障可推送到钉钉、企业微信、飞书或自定义 Webhook。 | 资源 | 地址 | |---|---| | **下载** | [Gitee 发行版](https://gitee.com/super_rgh/jync/releases/latest) · [GitHub Releases](https://github.com/vfaner/jync/releases/latest) | | **文档** | [官网](https://jync.qqmu.com) · [用户操作手册](https://jync.qqmu.com/docs/jync-user-guide.pdf) · [部署与运维手册](https://jync.qqmu.com/docs/jync-ops-guide.pdf) · [产品介绍](https://jync.qqmu.com/docs/jync-overview.pdf) | | **演示** | [Bilibili · 14 分钟,从建连接到实时同步](https://www.bilibili.com/video/BV1iHYJ6vEEd) | | **镜像** | [AtomGit(gitcode.com)](https://gitcode.com/vfaner/jync) · 代码与发布包的同步镜像,供国内加速访问 | > 下载、问题反馈与 PR 以 Gitee / GitHub 为准;AtomGit 为只读镜像。 --- ## 项目背景 政企系统从 MySQL、Oracle、SQL Server 迁移到达梦、金仓、OceanBase 等国产数据库时,迁移往往不是一次性搬完:新旧系统双轨运行、分批割接、历史库只读共存,都要求两个库在数周甚至数月里**持续保持一致**。 现成方案总有一步对不上。商业同步工具按节点授权,采购周期长、成本高;Debezium、Flink CDC 能力强,但要先搭 Kafka、Flink 与作业编排;DataX、Kettle 擅长一次性搬运,却不负责长期增量、结构同步与断点续传。**Jync 把这些逻辑做成一个可交付的软件**:一个 jar,实施人员用浏览器完成建连接、选表、配置调度、启动同步。MIT 协议开源,可完全私有化部署。 --- ## 核心能力 | 分类 | 能力 | |---|---| | 全量加载 | 主键 keyset 分块 + 单表内并行 + 结果集流式读取 + 逐块检查点;空表 INSERT-first、延迟二级索引;单表 20 万行/秒量级 | | 增量同步 | 时间戳 / 行级 SCN / 自增列 / 全表比对自动选策略;一条游标区间查询;水位线安全回退;游标提交后推进 | | 日志 CDC | MySQL binlog、Oracle LogMiner、达梦 LogMiner、PostgreSQL 系逻辑解码、SQL Server CDC、崖山 YStream;长驻线程流式回放,秒级延迟 | | 结构同步 | 表、索引、视图、存储过程/函数;类型映射、函数转换、标识符引号、分页语法、DDL 覆盖 | | ETL | 按客户取数 SQL 复制结果行;7 种分析型引擎;多语句脚本;覆盖 / 追加 / 范围覆盖;断点续跑;同源同目标的表可组成**批次**共享连接与调度 | | 专属迁移 | Elasticsearch / OpenSearch → Easysearch、MongoDB → MongoDB、MongoDB → KingbaseES 三种整库复制,连接模型独立于 JDBC;带预检,手动或 cron 运行,可取消并查看运行历史 | | 数据加工 | 列清洗(7 种规则)、表名映射、只读数据预览、按需行数核对、任务克隆、批量建任务(按表大小分箱) | | AI 辅助(可选) | 模型起草存储过程/函数的候选 SQL,人工审阅后才落库;AI 永不参与同步 | | 告警通知 | Webhook 推送同步失败、轮询卡死、项目未运行、CDC 停摆、数据漂移、连接健康、PG slot 积压;钉钉 / 企业微信 / 飞书 / 通用 JSON;冷却与恢复通知 | | 可靠性与可观测 | 幂等 upsert、检查点续传、数据库租约锁、at-least-once;看板、变更 / 审计 / 系统日志、性能曲线、可选 Prometheus 指标端点 | | 交付形态 | jar / Docker / Kubernetes;中英双语、昼夜主题;响应式布局;本地账号与三种统一认证 | --- ## 支持的数据库 内置 **34 种**预设类型,其中 25 种驱动随包内置。下图是官网的数据库能力地图:上半部分是 JDBC 的实时同步 / ETL 矩阵,底部是独立的**专属迁移**链路;点图可看完整说明。 [](https://jync.qqmu.com/database.html) - **自定义数据库**:JDBC URL + 驱动类名 + 驱动 jar 路径,运行时用独立 `URLClassLoader` 加载,可选方言家族。 - **驱动内置**:GBase、神通 Oscar、华为 GaussDB、SAP HANA、ClickHouse、Hive、Impala、Elasticsearch、MongoDB(Atlas SQL)的构件不可再分发,需自备 jar;驱动类名与预设不同时可在同一张卡片覆盖。 - **分析型 / 搜索型引擎**:Doris、ClickHouse、Hive、Impala、Elasticsearch、MongoDB 没有日志 CDC,**只作实时同步的源**(轮询 / 全表比对);ETL 中除 Elasticsearch 与 MongoDB 外都可写入。 - **专属迁移不走 JDBC**:三条链路由独立的「专属连接」与迁移任务完成,不进入 JDBC 能力矩阵;边界见[已知限制](docs/known-limitations.md)。GaussDB 与 openGauss 的差异、TDSQL / PolarDB 分版本、HANA 的 CDC 限制见[官网数据库页](https://jync.qqmu.com/database.html)。 --- ## 界面速览
![]() 看板 · 资源、任务与 24h 趋势 |
![]() 实时同步任务 · 状态、上次同步与详情 |
![]() 连接管理 · 源 / 目标分栏 |