2
我们来考虑Flyway常见问题部分中的What is the best strategy for dealing with hot fixes?问题。在这个问题:使用Flyway提供修补程序
- 应用程序版本7(和DB 7版)部署在生产
- 工作应用版本开始8
- DB版本8的开发和部署,在接受测试环境
- 错误是在生产标识
- DB版本7.1开发,并且必须接受测试
当迁徙路线:迁移将b如果在接受测试环境中调用,则会注意到v8已经被执行,因此不需要执行v7.1。
一方面它是有道理的,因为v7.1可能与v8不兼容,并且不适合Flyway分析。快速失败是完全可以理解的。
另一方面,将V7.1部署到验收测试环境的唯一方法是清理数据库并运行flyway:使用target = v7.1进行迁移,从而丢弃可能已被使用的数据。
有没有一个功能,我不知道,处理这种情况下,或干净+ migrate.target = v7.1唯一的选择?
此答案无法解决问题。一般来说,不能完全移动所有最新的迁移,因为相应的代码更改不是热修复程序的一部分。此外,这个答案只是重复Flyway FAQ。 – gnomie
这是我觉得最合适的方式。如果您觉得不适合,请为此问题提供另一个答案。我一直期待着有机会学习。 –