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

如何伪造flyway迁移?

尉迟高澹
2023-03-14

我们中的两个人在不同的GIT分支中制作了一个迁移脚本。现在,我已经拉动了源开发分支,并更正了 GIT 合并问题,并将我的迁移脚本重命名为最后一个。因此,数据库的新初始化和从开发分支的版本迁移数据库将是可以的。

然而,我的本地测试数据库中有很多数据,所以我手动应用了我在GIT中引入的新迁移脚本。然而,我不能让flyway认为,一切都很好。

那么,我如何才能伪造迁移?

当我尝试迁移时,我收到以下错误:

[ERROR] Failed to execute goal org.flywaydb:flyway-maven-plugin:3.2.1:migrate (default-cli) on project db: org.flywaydb.core.api.FlywayException: Validate failed. Migration Description mismatch for migration 1.118
[ERROR] -> Applied to database : AAA
[ERROR] -> Resolved locally    : BBB
[ERROR] -> [Help 1]

共有1个答案

朱锦
2023-03-14

您必须手动更新Flyway的元数据表(默认称为schema_version

 类似资料:
  • 问题内容: MyBatis迁移将每个SQL文件分为两部分: 一种用于向前迁移一个版本 一种用于迁移回一个版本 如何使用Flyway回滚版本? 问题答案: 尽管Flyway支持回滚(仅作为商业功能),但不鼓励使用它: https://flywaydb.org/documentation/command/undo 尽管撤消迁移的想法很好,但不幸的是,有时它在实践中会崩溃。一旦您进行了破坏性的更改(删除

  • 我目前正在研究Flyway作为Liquibase的替代方案,但在文档中无法找到以下问题的答案: 假设在生产环境中部署后发现迁移包含错误。回想起来,不应该按原样执行,但已经太晚了。但是,我们想用固定版本的替换迁移,这样从头开始填充的数据库就不会遭受相同的错误。 在 Liquibase 中,您将修复原始变更集并使用

  • 问题内容: 我正在为进行AJAX调用的JavaScript写一些QUnit测试。 为了隔离,我重写以将AJAX调用的参数数组写入变量。这可以测试方法如何使用AJAX函数,但是我很难测试 从位于http://api.jquery.com/load/的文档中: 当检测到成功的响应时(即,当textStatus为“成功”或“未修改”时),. load()将匹配元素的HTML内容设置为返回的数据。 因此,

  • 我们正在尝试将迁移作为.sql文件置于版本控制之下。开发人员将编写一个vn__*.sql文件,提交到版本控制,并且每5分钟运行一次的作业将自动迁移到开发和测试数据库。一旦更改被证明没有引起问题,其他人就会运行一个手动作业来在生产上运行迁移。 我的问题: 我有一个演示迁移,创建了几个表。我将v4__demotable.sql检查到PC上的版本控制中。 阅读文档时,开发人员似乎建议我应该创建一个新的v

  • 我已成功地将spring boot配置为使用Flyway的新项目 随Postgres数据库从版本0001.0迁移到0008.0 我已在本地手动更改脚本,但flyway迁移失败。 错误消息示例: 注意:-我不想从表flyway_schema_history中删除脚本条目。

  • 我正在使用flyway命令行工具来处理我的db迁移。到目前为止,所有迁移都是sql 配置文件(仅用于选项): 那很好用。 但是现在我需要添加一个基于java的迁移。我真的很困惑,我找不到任何如何做的例子。如何编译,在哪里放java迁移。 我尝试了简单的迁移类从官方留档: 但是接下来怎么办?尝试编译: 然后把罐子放在不同的地方,没有效果。 flyway信息-看不到迁移。 因此,如何构建最简单的基于j