Skip to content

变更对比与回滚

本指南介绍如何使用筑表师的结构 Diff 对比正向 ALTER 脚本生成原子回滚 DDL 以及版本时间轴回放,保障生产数据库变更安全。

适用场景

适用于在已有存量业务表上进行字段增删、类型变更或索引调整时,提前生成精准的发布脚本与应急回滚方案,避免线上数据库结构事故。


核心操作流程

1. 触发与查看结构差异(Diff)

  1. 从“已保存表”抽屉中加载一张目标业务表。
  2. 在工作区中进行字段增删、类型修改或索引调整。
  3. 表配置区域会自动显示查看表结构变更按钮。
  4. 点击打开对比弹窗,直观查看表级参数字段列表(包含重命名识别、新增、删除与属性修改)及索引变更的对比视图。

2. 导出 ALTER 脚本与回滚 DDL

  • 正向变更脚本:在对比弹窗中点击复制 ALTER 脚本,获取用于生产环境发布的标准增量变更 SQL。
  • 应急回退方案:展开下方回滚区域,点击复制回滚脚本,获取能在变更异常时迅速还原表结构的原子回退 DDL。

3. 版本历史与一键回滚

  • 在“已保存表”抽屉中找到对应表项,点击其菜单中的版本历史
  • 查看该表从初始创建到历次保存的快照版本、保存时间与修改摘要。
  • 选中任意历史版本,点击回滚至此版本,工作区将瞬间还原到该历史状态。

4. Schema 时间轴可视化回放

  • 在版本历史面板中点击时间轴回放
  • 播放器将以动画形式逐步演示表结构从 V1 到最新版本的演进轨迹,便于向团队和架构委员会直观汇报设计历程。

校验与完成标志

  • [ ] 结构差异精准反映本次修改范围,包含重命名字段的智能识别。
  • [ ] 导出的 ALTER 脚本语法与目标生产数据库版本严格匹配。
  • [ ] 备妥对应的回滚脚本,形成完整的上线方案与故障预案。
  • [ ] 能在版本历史中准确检索和回滚历史快照。

常见注意事项

线上数据兼容性风险

系统生成的 ALTER 与回滚脚本侧重于结构定义。若涉及字段缩短、类型强转或添加非空且无默认值列,执行前请评估线上存量数据的迁移与兼容性。

  • Diff 按钮显示条件:只有在加载了已保存表并产生实际改动时才会出现对比入口;全新未命名的草稿没有历史基线,不触发对比。
  • 版本快照持久化:覆盖保存表时会自动追加一条历史记录;建议在重大业务迭代节点打上明确命名的稳定版本。