# Jync 捷同-异构数据库实时同步工具 **Repository Path**: xmagictech/jync ## Basic Information - **Project Name**: Jync 捷同-异构数据库实时同步工具 - **Description**: Jync 捷同 - 开箱即用的异构数据库实时同步工具。单 JAR 启动、浏览器配置,无需 Kafka/ZooKeeper;支持 MySQL、Oracle、PostgreSQL、达梦、金仓等 34 种数据库,内置结构同步、六类日志 CDC、ETL、告警与企业统一认证,内网离线可用。 - **Primary Language**: Java - **License**: MIT - **Default Branch**: main - **Homepage**: https://jync.qqmu.com - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 22 - **Created**: 2026-11-09 - **Last Updated**: 2026-11-09 ## 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://github.com/vfaner/jync) [](https://github.com/vfaner/jync) [](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,做到秒级延迟。 - **结构与数据一起走**:目标库缺失时自动建表 / 索引 / 视图 / 存储过程,内置各方言类型映射与函数转换。 - **可靠续传**:停机、断网、进程被杀都能从检查点继续,写入全部幂等,停机期间源库的变更重启后自动补齐。 - **另有专属迁移**:三条不走 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) | | **更新日志** | [各版本发布说明](docs/release-notes/) | | **源码** | [GitHub](https://github.com/vfaner/jync) · [Gitee](https://gitee.com/super_rgh/jync) · [AtomGit 镜像](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;长驻线程流式回放,秒级延迟 | | Redis 缓存投影 | 实时同步的目标也可以是 Redis:按 CDC 把每一行投影成 `<前缀><表>:<主键>` 的 JSON 或 HASH,基线 + 回放 + 前缀清扫重建;只支持日志 CDC,缓存语义与边界见[已知限制](docs/known-limitations.md) | | 结构同步 | 表、索引、视图、存储过程/函数;类型映射、函数转换、标识符引号、分页语法、DDL 覆盖 | | ETL | 按客户取数 SQL 复制结果行;7 种分析型引擎;多语句脚本;覆盖 / 追加 / 范围覆盖;断点续跑;同源同目标的表可组成**批次**共享连接与调度 | | 专属迁移 | Elasticsearch / OpenSearch → Easysearch、MongoDB → MongoDB、MongoDB → KingbaseES 三种整库复制,连接模型独立于 JDBC;带预检,手动或 cron 运行,可取消并查看运行历史 | | 数据加工 | 列清洗(13 种规则,含手机号/身份证/姓名/邮箱掩码与 SHA-256 哈希)、表名映射、只读数据预览、按需行数核对、任务克隆、批量建任务(按表大小分箱) | | 系统管理 | 配置包导出/导入(口令加密、可选运行状态、目标密钥重加密)、元数据库连接测试器、强制 HTTPS 页面开关、应用内 TLS 证书上传(PKCS#12 / JKS / PEM) | | 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 外都可写入。 - **Redis 是同步目标,不是数据库**:在项目页选「目标类型 = Redis」,连接管理里单独维护 Redis 目标(单机或 Cluster,不支持 Sentinel);源端仍是数据库连接,且必须走日志 CDC。它不是 `DatabaseType`,不出现在数据库能力矩阵与 ETL 引擎列表里。 - **专属迁移不走 JDBC**:三条链路由独立的「专属连接」与迁移任务完成,不进入 JDBC 能力矩阵;边界见[已知限制](docs/known-limitations.md)。GaussDB 与 openGauss 的差异、TDSQL / PolarDB 分版本、HANA 的 CDC 限制见[官网数据库页](https://jync.qqmu.com/database.html)。 --- ## 界面速览
![]() 看板 · 资源、任务与 24h 趋势 |
![]() 实时同步任务 · 状态、上次同步与详情 |
![]() 连接管理 · 源 / 目标分栏 |