当前位置: 首页 > 知识库问答 >
问题:

重新创建飞行路线迁移表

荀正谊
2023-03-14

有没有办法告诉flyway在不应用迁移的情况下重新创建flyway表。例如,查看迁移文件夹中的脚本,假设它们都已应用,并简单地确保flyway表包含所有脚本

我们的方案是,我们不允许在生产和(ISO;银行、认证)原因。规则说我们需要完全删除表。因此,当我们从生产副本重置测试环境时,我们需要重新创建飞行道表。现在,我们从现有的测试环境中复制和粘贴,但有时这与生产不同步,并且会发生各种问题。

因此,我们希望使用与生产中相同的版本设置我们的生产副本,然后从该版本重新创建表,以确保所有内容都同步。但是据我所知,flyway中的修复选项不会重新创建未应用的脚本…

共有1个答案

姚信鸥
2023-03-14

看起来你所描述的东西被称为基线:

您告诉flyway,您正在使用的数据库是一个版本号,因此在迁移过程中将忽略该版本之前的所有脚本。

https://flywaydb.org/documentation/commandline/baseline

 类似资料:
  • 我们使用Liquibase,现在在新项目中,我们必须使用Flyway。在liquibase中,迁移顺序在xml文件中,所以您可以指定什么是第一次迁移,什么是第二次迁移,它不依赖于名称。 所以,当一些开发人员添加新的迁移时,如果之前有人推动了新的迁移,那么他将在Git中遇到冲突,并且必须修复顺序。 这是如何在Flyway中实现的?如果并行添加迁移,如何控制顺序?

  • 在类路径中:/db。迁移有迁移但flyway没有看到这一点,而是爱上了msg 2022-05-02 17:28:07.993INFO 45296 --- [ restartedMain]c. c. c. ConfigServiceProperty tySourceLocator:从服务器获取配置,地址为:http://localhost:8888/story2022-05-02 17:28:08.

  • Flyway是否可以用于混合创建和迁移脚本,以便: 新安装运行架构创建脚本 现有安装运行迁移脚本,并且永远看不到后续版本的创建脚本 ? 例如给定: 现有的V1安装将运行以下操作以访问V3: 数据库/迁移/V1/V1.1__migrateA.sql 数据库/迁移/V2/V2.1__migrateB.sql 数据库/迁移/V2/V2.2__migrateC.sql 它永远不会运行以下内容,因为它们表示

  • 我为命令行java迁移执行了以下步骤: < li >创建java文件 当我执行迁移逗号时,它会像 警告:无法解析位置类路径:db/迁移 请查看下面的附件图片,它实际上是罐子。我已经提取了更多信息。

  • 目前,我们公司通过手动创建、分发和运行必要的SQL脚本来处理所有数据库模式更改。显然,这会导致各种机器偶尔更新和稀疏更新的问题。 我正在研究更现代的方法来解决这个问题,而Flyway现在是主要的候选人(尽管如果可以提出令人信服的论据,我们仍然愿意使用Liquibase)。 正常流程很简单,和宣传的一样简单,但是我们不知道如何正确处理冲突的迁移脚本。例如,不同个人分支(A和B)上的2名开发人员在不同

  • 我在我的一个项目中集成了flyway。我有很多迁移,迁移一个新的空数据库需要很长时间,主要是因为在迁移过程中也添加了种子数据。现在我想改变这一点。不幸的是,这些迁移已经被推到生产环境中(是的,在某个时候种子数据也被迁移到了那里)。 我的想法是为当前版本的生产系统设置基线,然后清理旧的迁移:压缩模式迁移并将种子和测试数据移动到未部署到生产中的新位置。 现在我的问题是: 如何在生产数据库中设置基线,而