在我的应用程序的不同版本中,我遇到了flyway迁移问题。例如,我的项目有两个版本-- 1.0和2.0。在2.0版本中,我有一个包含以下内容的迁移脚本V1__add_table.sql:
CREATE TABLE foo(
bar boolean
);当我运行我的项目版本2.0迁移时,应用了V1__add_table.sql,我可以在我的flyway_schema_history表中看到它,类型为SQL。然后我转到项目版本1.0并运行它。此版本的项目不包含任何迁移,因此在flyway_schema_history表中,我为类型为DELETED的V1__add_table.sql添加了另一行。问题是,当我回到项目版本时,2.0 Flyway试图再次执行迁移,但失败了,因为它已经被应用了。
如何禁用创建DELETE迁移?我希望Flyway会默默地忽略迁移,这些迁移已经应用到了success列中。
发布于 2021-12-01 11:00:03
试一试
flyway.ignorePendingMigrations=true用你的flyway安装。当模式历史表指示迁移已由较新的部署2.0执行,但在此1.0版本中不可用时,它很有用。
参考:https://flywaydb.org/documentation/configuration/parameters/ignoreFutureMigrations
https://stackoverflow.com/questions/70065370
复制相似问题