gt-checksum v4.0.0下载列表
当前版本进一步增强了长任务可恢复性与修复可审计能力,支持断点续传、反向回滚 SQL、自定义数据类型映射、SSL 加密连接、CSV 结果导出以及结构修复辅助参数等能力,适合用于迁移验收、升级校验、主从/组复制一致性检查和定期巡检等场景。
v4.0.0 关键变化
- [功能新增] 新增断点续传能力,
gt-checksum数据校验和repairDB可通过resume=ON/ASK在异常退出后继续执行;gt-checksum会校验旧断点和多个 running 进度文件,repairDB中断时会等待已开始文件完成,避免续传重放半执行
文件。 - [功能新增] 新增
dTypeMappingFile参数,支持用户自定义数据类型映射规则(YAML/JSON),覆盖oracle_to_mysql、mysql_upgrade、mariadb_to_mysql三种迁移场景,支持schema/table/column级别精细化控制;可通过--preview-dtype-mapping预览最终映射规则表后退出,便于调试。 - [功能新增] 新增反向回滚SQL生成能力,通过
genRollSQL/maxRollRowNum/rollFileDir等参数控制,在checkObject=data且datafix=file/table时可为修复SQL自动生成对应的回滚语句;datafix=table在线修复也会同步写出 rollback SQL,后续可使用repairDB ./rollsql快速回退。 - [功能新增] 新增
truncateBeforeAlter结构修复辅助参数;该参数可在checkObject=struct的 base table 首个ALTER TABLE前生成TRUNCATE TABLE,默认关闭,仅适合目标端数据可丢弃场景。 - [功能新增] 新增 SSL 加密连接支持,源端和目标端可独立配置 SSL 参数,支持五种模式(
DISABLED/PREFERRED/REQUIRED/VERIFY_CA/VERIFY_IDENTITY)。 - [功能新增]
srcDSN/dstDSN中的 password 必须使用ENC[...]密文;新增独立工具gt-dsn-crypt生成 32 字节 base64 key 与 AES-256-GCM 密文,启动时通过--key或GT_CHECKSUM_DSN_KEY提供 key,所有 DSN 日志统一脱敏。 - [功能优化] 完善权限预检与修复安全策略:区分源端/目标端角色,支持通配/映射规则压缩检查;指定库表不可见或匹配为空时提示检查权限并给出
SHOW GRANTS/GRANT SELECT建议,目标端表不可见时先提示权限不足;非data对象即使配置datafix=table也会强制导出 fix SQL,不直接在线修改目标对象。 - [功能优化] 优化 COLLATE 修复逻辑,当存在
dTypeMapping规则覆盖时自动生成列级 MODIFY COLUMN SQL,而非表级 CONVERT TO SQL。 - [性能优化] 断点续传模式下,行数统计(估算值和精确 COUNT(*))写入进度文件缓存,续传时直接读取,避免重复扫描大表;源端和目标端行数改为并行查询,减少等待时间。
- [性能优化] 优化数据校验行数统计流程,源端和目标端行数改为并行查询;同时改进无主键表 DELETE 修复逻辑,避免 NULL 值导致的语句生成错误。
- [问题修复] 修复无索引表在
datafix=table下未在线执行DELETE/INSERT的问题,避免再次校验仍持续报差异;同时在线修复按DELETE → INSERT/UPDATE顺序执行,降低同批差异主键或唯一键重复冲突风险。 - [问题修复] 修复
repairDB执行 multi-values INSERT 遇到Duplicate entry时整条语句失败的问题;repairDB受splitInsertOnDupKey控制,gt-checksum在线修复路径也会在 MySQL 重复键时自动拆分重试并记录[DUPKEY-SPLIT],当前无独立开关。 - [问题修复] 修复类型映射与修复 SQL 输出问题,包括 Oracle
NUMBER(19,0)阈值、tinyint(1)↔bit(1)等价映射、数值列字面量以及日志初始化前 panic。
更多详细变化详见 gt-checksum v4.0.0 版本更新说明。
二进制包
| Packages | Size | md5 |
|---|---|---|
| gt-checksum-3.0.0-a8957a3-linux-x86_64.tar.xz | 44M | e3a3a07ed3f7a55cde7b630a5ae1d2a7 |
| gt-checksum-3.0.0-a8957a3-linux-x86_64-minimal.tar.xz | 14M | b31291044f816401c35793df79affb9c |
| gt-checksum-3.0.0-a8957a3-linux-aarch64.tar.xz | 43M | f81606a5a6a0b807b1551b951e329586 |
| gt-checksum-3.0.0-a8957a3-linux-aarch64-minimal.tar.xz | 13M | 7a21c65cb911c40a64dd72316626f03d |