我遇到以下问题:
org.flywaydb.core.api.FlywayException: Validate failed: Detected applied migration not resolved locally: 1.44
当我理解我在1.44中添加的数据无效且我不想在旧环境中处理它时发生这种情况,但在新环境中我不想要这些数据。我想要在新迁移中插入的数据(例如1.48)。
如何删除它以便我完成所需而不会出错?什么是正确的方法?
答案 0 :(得分:2)
此问题与Best pratice: How to modify flyway migration script after it has been used
有关基本答案是:在应用后不删除
如果在迁移过程中,某个中间状态并不完全符合您的要求,只要最后一个(在您的情况下为1.48)是正确的,这无关紧要。
现在,如果确实需要删除此迁移,请问自己是否用空文件替换它也可以完成这项工作。如果是,那么你可以按照我在这里给出的建议:https://stackoverflow.com/a/35491545/350428
现在,如果仍然不够,并且您真的需要删除此迁移,请删除该文件并手动修补flyway_schema_history
表以使其再次保持一致。这很容易出现风险,应该是绝对的最后解决方案。
答案 1 :(得分:0)
您可以 UNDO 进行迁移:UNDO flyway migration