首页/开发/代码质量与评审速查/评审检查项:数据迁移与回滚
代码评审64 条

评审检查项:数据迁移与回滚

数据迁移评审:脚本是否可重入、大表变更的锁与时长、新旧代码与数据格式的兼容窗口、回滚方案是否演练过。

  • 可重入与幂等:失败后重跑是否安全
  • 锁与时长:大表 DDL/DML 的影响评估与分批方案
  • 兼容窗口:先扩后缩(expand-contract),新旧版本并存期数据双向可用
  • 回滚:回滚脚本是否准备、是否需要数据恢复点
不可逆迁移(删列、改类型)必须给出暂停点与备份策略,评审时逐项确认。
演练要求在类生产数据量上试跑,记录耗时与锁等待
回滚证据备份点位置、恢复演练结果、预计恢复时长

易错点

  • 上线才跑全表更新:锁表拖垮线上,中断后状态未知
  • 删旧列一步到位:回滚时数据已不可恢复

数据来源与参考

  • 《Refactoring Databases》(Ambler & Sadalage,expand-contract 模式)
  • Martin Fowler · Parallel Change
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌