删除 flyway 中的迁移
Delete migration in flyway
我遇到了以下问题:
org.flywaydb.core.api.FlywayException: Validate failed: Detected applied migration not resolved locally: 1.44
当我了解到我在 1.44 中添加的数据无效并且我不想在旧环境中处理它,但在新环境中我不想要这些数据时,就会发生这种情况。我想要我将在新迁移中插入的数据(例如 1.48)。
- 如果我更改旧迁移,由于校验和,它将在旧环境上失败;
- 如果我离开它,在新的环境中我将得到来自 1.44 的无效数据;
如何删除它才能完成我需要的操作而不出现错误?什么是正确的方法?
此问题与
相关
基本答案是:一旦应用就不要删除
在迁移过程中,如果某些中间状态不是您想要的并不重要,只要最后一个(在您的情况下为 1.48)是正确的即可。
现在,如果您真的需要删除此迁移,请问问自己用空文件替换它是否也可以完成这项工作。如果是,那么您可以按照我在这里给出的建议进行操作:
现在如果这还不够并且您真的真的需要删除此迁移,请删除文件并手动修补 flyway_schema_history
table使其再次保持一致。这是有风险的,应该是最后的解决方案。
您可以撤消您的迁移:UNDO flyway migration
我遇到了以下问题:
org.flywaydb.core.api.FlywayException: Validate failed: Detected applied migration not resolved locally: 1.44
当我了解到我在 1.44 中添加的数据无效并且我不想在旧环境中处理它,但在新环境中我不想要这些数据时,就会发生这种情况。我想要我将在新迁移中插入的数据(例如 1.48)。
- 如果我更改旧迁移,由于校验和,它将在旧环境上失败;
- 如果我离开它,在新的环境中我将得到来自 1.44 的无效数据;
如何删除它才能完成我需要的操作而不出现错误?什么是正确的方法?
此问题与
基本答案是:一旦应用就不要删除
在迁移过程中,如果某些中间状态不是您想要的并不重要,只要最后一个(在您的情况下为 1.48)是正确的即可。
现在,如果您真的需要删除此迁移,请问问自己用空文件替换它是否也可以完成这项工作。如果是,那么您可以按照我在这里给出的建议进行操作:
现在如果这还不够并且您真的真的需要删除此迁移,请删除文件并手动修补 flyway_schema_history
table使其再次保持一致。这是有风险的,应该是最后的解决方案。
您可以撤消您的迁移:UNDO flyway migration