【问题标题】:Can I rename Flyway migration scripts?我可以重命名 Flyway 迁移脚本吗?
【发布时间】:2016-06-05 00:42:00
【问题描述】:

我有一个项目,其数据库由 Flyway 在严格验证模式下管理。 我的迁移文件如下所示:

  • V1.0__init.sql
  • V11.0__even_better.sql
  • V2.0__update.sql
  • V7.0__enhance.sql

文件的显示顺序不正确(11 介于 1 和 2 之间)。 因此,我想将它们更改为:

  • V001.000__init.sql
  • V002.000__update.sql
  • V007.000__enhance.sql
  • V011.000__even_better.sql

documentation says:

忽略每个部分的前导零

这可能意味着上述重命名是可以的。 但是查看schema_version 表,保留了前导零,这似乎上述重命名会破坏迁移。那么我可以重命名,还是会炸毁一切?

【问题讨论】:

  • 到目前为止,您有没有将任何东西投入生产,还是只有“本地”迁移?
  • 可能有点跑题了,但请注意 GNU ls 命令支持按版本号排序,这与 Flyway 文件名约定很好。只需尝试 ls -lv 即可按版本对迁移文件进行排序。

标签: flyway


【解决方案1】:

在本地试了一下,果然奏效了。

我没想到的原因是schema_version表中的版本号包含前导零,而script列的全名也提到了原始脚本。

尽管如此,重命名文件后验证成功。

【讨论】:

    猜你喜欢
    • 2018-01-22
    • 2018-02-28
    • 2018-08-28
    • 2013-03-24
    • 2018-05-06
    • 2011-11-05
    • 2020-08-17
    • 2017-11-14
    • 2012-12-20
    相关资源
    最近更新 更多