【问题标题】:Do Flyway support zipped scriptsFlyway 是否支持压缩脚本
【发布时间】:2016-04-27 20:53:35
【问题描述】:

我正在我们公司介绍 Flyway,我想知道是否可以在 tar.gz 或 zip 中提供 Flyway 支持脚本。我们的转储很大(600MB),即使我只转储必要的表,它仍然足够大(100MB)。 Github 只支持小于 50MB 的文件,所以我不能提交这个基线。

或者我使用生产转储作为基线做错了什么?

【问题讨论】:

  • 就个人而言,我不会将所有生产 数据 放在基线中。我将生产 schema 放在基线中,然后用一组定义的测试数据为数据库播种。问题是,您为什么想要/需要迁移中的生产数据?

标签: database-migration flyway


【解决方案1】:

听起来您需要像DbUnit 这样的工具。如果没有,当然可以使用自定义MigrationResolver 来做你想做的事。您可以拥有任意数量的压缩文件(保持在 50MB 限制以下)并从类路径(或文件系统位置)读取它们。您甚至可以在自定义解析器中使用 DbUnit 来简化事情。我之前所做的是将庞大的任务拆分为一组较小的ResolvedMigration 任务,每个任务都有一个次要版本号,以便更容易推断正在发生的事情,尤其是当事情失败时。生成版本号的过程是完全确定的,这一点很重要,否则您的迁移可能会以奇怪的方式失败。你可能需要做一些额外的工作来确保你的 ResolvedMigration 对象是惰性的,这样你就不会在每次 Flyway 运行时解压缩数百兆字节,无论是否有任何工作要做。

【讨论】:

    猜你喜欢
    • 2012-08-04
    • 2023-03-19
    • 1970-01-01
    • 2017-10-24
    • 1970-01-01
    • 1970-01-01
    • 2022-08-03
    • 1970-01-01
    • 2021-08-23
    相关资源
    最近更新 更多