







适用场景
- 多人并行开发的项目:表结构频繁变动,发布时不再互相"踩踏",目标环境始终结构一致,心里有底。
- 多环境流转的发布链路:dev → test → uat 层层推进时,一键将上游结构同步到下游,变更 SQL 自动归档,下载核验后即可线上执行。
- 固定发版节奏的团队:把散落在各处、靠人肉维护的 SQL 变更, 收敛为一个统一、可检索、有版本的历史仓库,告别"谁改的,改了什么,为什么改"的千古谜题。
目标用户群体
凡是每天与数据库结构变更打交道的人,都能从中受益:无论你是统筹全局的基础架构负责人,是深耕业务的开发工程师,还是守土有责的数据库运维。它尤其适合那些"环境多、变更频、人手少"的团队——用一次点击,替代无数条手工 SQL。
核心特色功能
- 差异尽收眼底:表、列、索引的差异逐项呈现, 改动哪些,保留哪些,由你拍板,而不是工具替你"一把梭"。
- 更名映射,随心所欲:表名、字段名可直接映射为源库名称,重构、分表、规范化等真实场景全部覆盖。
- 属性零遗漏:NOT NULL、COMMENT 等字段属性自动落入 SQL 文件,细节不出错,审核更省心。
- 版本化输出:每一次比对都沉淀一份新的 SQL 版本,可随时下载、核对、追溯,变更过程一目了然。
- 数据安全优先:只动结构、不动数据—凡是未删除的表和列,其数据记录一个字节都不会被动。
- 能力边界清晰:当前支持 MySQL,覆盖数据库表、表属性、列名、列属性、索引名、索引属性等核心迁移项(暂不支持外键)。
该产品解决的痛点/竞品软件产品的存在的不足
- 告别"一刀切"式同步:传统工具直接整体同步,无法按列选择,目标库中多出的表和列往往被悄悄丢掉;而本工具把每个差异摆上台面,去留由你决定。
- 告别"改不了名"的尴尬:面对表更名、字段更名这类高频重构需求,传统工具只能干瞪眼;本工具支持任意更名映射,重构不再伤筋动骨。
- 告别"改完无痕"的失控:传统工具变更不留痕,出了问题无从追溯;本工具让每一次变更都有据可查,有 SQL 可审。
- 告别"数据被覆盖"的风险:更可怕的是行数据被直接覆盖,导致环境错乱、数据串扰;本工具只生成结构变更,守住数据安全的底线。
合作伙伴与成功案例
该工具已在开发者所在公司深入落地,贯穿从开发到上线的完整链路:
- dev → test:曾经,测试环境因缺一个字段而全线报错是家常便饭;如今,测试人员一键同步 dev 结构到 test,问题在发生前就被消灭,测试与后端的协作从"反复扯皮"变为"顺畅高效"。
- test → uat:同一套流程向下游自然延伸,每个阶段的环境结构始终一致,联调验收不再被"环境不一致"拖后腿。
- uat → online:生产发布坚持"工具生成、人工核对、脚本执行"的原则——工具负责产出准确无误的迁移 SQL,上线动作由人工确认后执行,既享受自动化效率,又守住生产安全底线。
技术支持与服务
- 售后有温度:购买后提供 3 天免费集中答疑,此后长期不定期答疑支持,用得放心。
- 定制无门槛:支持功能二次开发,按需定制,费用面议。
- 部署有保障:选择"部署 + 下载",专人远程协助安装;选择"仅下载", 配套文档详尽,自行部署同样轻松。
- 源码全交付:源代码一并交付,产品归你所有,后续演进完全自主。
部署/使用先决条件
- 本地或服务器具备 Java 8 及以上运行环境 。
- 本地或服务器 可正常访问待操作的数据库。
实施/部署步骤收起展开
1、下载到软件包后,进入./config 文件修改 application-local.yml 中的 MYSQL地址。
databases_sync:
name_spaces:
demo:
source:
datasource:
url: ${source_1_url:jdbc:mysql://192.168.56.101:3306/source_db?characterEncoding=utf-8&autoReconnect=true}
username: ${source_1_username:root}
password: ${source_1_password:123456}
driver-class-name: com.mysql.cj.jdbc.Driver
target:
datasource:
url: ${target_1_url:jdbc:mysql://192.168.56.101:3306/target_db?characterEncoding=utf-8&autoReconnect=true}
username: ${target_1_username:root}
password: ${target_1_password:123456}
driver-class-name: com.mysql.cj.jdbc.Driver
其中 demo 是 DB schema 组名,可以添加多个组。
2、回到根目录运行
java -Dfile.encoding=UTF-8 -jar db-smart-migrate-service-2.0.0-RELEASE.jar --spring.config.location=file:./config/
使用说明
1、登陆 用户名密码为 admin/123456
2、点击 目标库和来源库的结构比对 ,点击 开始比对 弹出操作对话框,根据自己需求进行操作,完成后,点击 下载SQL校验结构是否正确。