代码之家  ›  专栏  ›  技术社区  ›  Whimusical

Flyway是否知道DB状态,或者只验证迁移文件的不可变性?

  •  1
  • Whimusical  · 技术社区  · 6 年前

    在验证时,我很难找到有关立交桥如何工作的具体信息。校验和是作为一个文件应用于Migaration,还是作为实际数据库更改应用于迁移?当应用于数据库和当前内容时,它只是比较迁移文件的内容,还是从某种程度上知道数据库的信息模式及其当前状态?

    1 回复  |  直到 6 年前
        1
  •  4
  •   Mark Bramnik    6 年前

    Flyway在模式中维护一个特殊的表。

    此表包含有关到目前为止已应用的所有DB迁移的信息。

    当它运行时,Flyway会检查代码库是否有新的迁移,与已经从该表应用的迁移相比,如果有新的迁移,它会逐个应用它们,否则只会完成。

    所以,Flyway的知识来源是一个拥有Flyway自己表的模式。