变更对比与回滚
本指南介绍如何使用筑表师的结构 Diff 对比、正向 ALTER 脚本生成、原子回滚 DDL 以及版本时间轴回放,保障生产数据库变更安全。
适用场景
适用于在已有存量业务表上进行字段增删、类型变更或索引调整时,提前生成精准的发布脚本与应急回滚方案,避免线上数据库结构事故。
核心操作流程
1. 触发与查看结构差异(Diff)
- 从“已保存表”抽屉中加载一张目标业务表。
- 在工作区中进行字段增删、类型修改或索引调整。
- 表配置区域会自动显示查看表结构变更按钮。
- 点击打开对比弹窗,直观查看表级参数、字段列表(包含重命名识别、新增、删除与属性修改)及索引变更的对比视图。
2. 导出 ALTER 脚本与回滚 DDL
- 正向变更脚本:在对比弹窗中点击复制 ALTER 脚本,获取用于生产环境发布的标准增量变更 SQL。
- 应急回退方案:展开下方回滚区域,点击复制回滚脚本,获取能在变更异常时迅速还原表结构的原子回退 DDL。
3. 版本历史与一键回滚
- 在“已保存表”抽屉中找到对应表项,点击其菜单中的版本历史。
- 查看该表从初始创建到历次保存的快照版本、保存时间与修改摘要。
- 选中任意历史版本,点击回滚至此版本,工作区将瞬间还原到该历史状态。
4. Schema 时间轴可视化回放
- 在版本历史面板中点击时间轴回放。
- 播放器将以动画形式逐步演示表结构从 V1 到最新版本的演进轨迹,便于向团队和架构委员会直观汇报设计历程。
校验与完成标志
- [ ] 结构差异精准反映本次修改范围,包含重命名字段的智能识别。
- [ ] 导出的 ALTER 脚本语法与目标生产数据库版本严格匹配。
- [ ] 备妥对应的回滚脚本,形成完整的上线方案与故障预案。
- [ ] 能在版本历史中准确检索和回滚历史快照。
常见注意事项
线上数据兼容性风险
系统生成的 ALTER 与回滚脚本侧重于结构定义。若涉及字段缩短、类型强转或添加非空且无默认值列,执行前请评估线上存量数据的迁移与兼容性。
- Diff 按钮显示条件:只有在加载了已保存表并产生实际改动时才会出现对比入口;全新未命名的草稿没有历史基线,不触发对比。
- 版本快照持久化:覆盖保存表时会自动追加一条历史记录;建议在重大业务迭代节点打上明确命名的稳定版本。