【问题标题】:FlywayDB migration removalFlywayDB 迁移移除
【发布时间】:2018-03-15 20:25:05
【问题描述】:

我一直认为,如果删除了使用 flywaydb 应用的迁移(两者:来自 DB schema_version 表的条目和迁移 sql 文件),那么应用程序(在 spring 框架中编写,classpath 中有 flyway)将在启动时崩溃,因为无效的校验和。

实际上(我今天测试了它)当迁移文件和数据库条目都被删除时,应用程序启动得很好,我发现这有点令人困惑。

flyway 如何计算校验和?是仅基于正在应用的迁移文件的内容还是还考虑了以前的迁移?

另外,如果文件和表条目都被删除,那么删除已应用的迁移是否安全?

【问题讨论】:

    标签: spring spring-boot flyway


    【解决方案1】:

    这里有很多问题。对于您的主要问题,此行为由 ignoreMissingMigrations 标志控制。见https://flywaydb.org/documentation/commandline/migrate

    校验和是根据迁移文件的内容计算的(由于 Git CRLF 转换而忽略行尾)。

    如果迁移文件及其在元数据表中的条目都被删除,Flyway 将不再了解它。然而,这并不意味着它是安全的,因为它可能会影响您以后重新创建数据库架构的能力。

    【讨论】:

      猜你喜欢
      • 2015-01-05
      • 2015-08-19
      • 2014-10-28
      • 2017-06-12
      • 2015-09-03
      • 2019-01-02
      • 2016-12-10
      • 2016-04-02
      • 2014-05-26
      相关资源
      最近更新 更多