发布于 2017-12-12 17:24:13
这是从Flyway 5.0开始支持的。遗憾的是,这只是一个商业功能。
发布于 2015-10-20 02:01:36
我假设你需要一个回滚策略,例如当一个合作伙伴在生产阶段失败,他的部署对你的发布至关重要。
您可以像这样命名您的flyway SQL脚本:
V< YourReleaseNumber >.000_< description >.sql
现在你可以走了
用于回滚的V< YourReleaseNumber >.998_rollback.sql
并使V< YourReleaseNumber >.999_reenroll.sql重新注册。
在您的CI/CD环境中,在部署作业之后,您还需要2个作业(手动触发)。一个用于rollback,它运行回滚过程,包括flyway迁移。其他用于重新注册。
您只需关注flyway中的目标配置。
对于部署作业,您的目标应为< YourReleaseNumber >.997
对于回滚作业< YourReleaseNumber >.998
启动新版本时,请确保不会运行旧版本的回滚/重新注册脚本。
如前所述,经过充分测试的备份和恢复策略是推荐的解决方案。
(sry表示糟糕的英语)
https://stackoverflow.com/questions/4959299
复制相似问题