gpt4 book ai didi

flyway - "compress"Flyway迁移的任何方法?

转载 作者:行者123 更新时间:2023-12-03 11:57:41 25 4
gpt4 key购买 nike

我们正在使用 Flyway 迁移数据库架构,我们已经有 100 多个迁移脚本。

一旦我们将多个迁移“压缩”为单个第一版本迁移,在开发过程中就可以了,因为我们删除并重新创建架构。但是在生产中这不起作用,因为 Flyway 将无法验证迁移。

在这种情况下,我找不到任何文档或最佳做法。问题是文件数量不断增加,我不想每次都看到数千个迁移文件,基本上如果生产已经是最新版本。我的意思是,版本号低于生产版本的迁移脚本与我们无关,如果我们可以将这些文件压缩为单个迁移,那就太棒了。

我们正在使用 MySQL。

我们应该如何处理?

最佳答案

这不是重新基线会做的事情吗?

我对 flyway 还是个新手,但这就是我认为它会起作用的方式。在接受我的话之前,请先测试以下内容。

删除 schema_version 表。
删除您的迁移脚本。

运行飞行路线基线
(这将重新创建 schema_version 表并添加基线记录作为版本 1)

现在你可以走了。请记住,您将无法“迁移”到任何先前版本,因为您已经删除了所有迁移脚本,但这对您来说可能不是问题。

分步解决:

  • drop table schema_version;
  • 例如,通过 MySQL Workbench 将数据库结构导出为脚本。命名这个脚本 V1__Baseline.sql
  • 删除所有迁移脚本并添加 V1__Baseline.sql到您的脚本文件夹,因此它是 Flyway 唯一可用的脚本
  • 运行 Flyway 的“基线”命令
  • 完成
  • 关于flyway - "compress"Flyway迁移的任何方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33509131/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com