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

将flyway版本1.5升级至3.2

宫修贤
2023-03-14

我一直在寻找flyway版本1中的迁移方法。x到3。x(即从Google.com.googlecode.flyway到org.flywaydb)在提到要首先迁移到2.3版的地方,但没有提到如何迁移?有没有一种直接的方法可以做到这一点,或者我必须从后端做一些事情。

我的数据库已经有数据,我不能删除数据库。注意:Flyway 1. X到2. X对tableschema_version有重大更改。

编辑

我已经将flyway的maven依赖从1.5升级到3.1。它现在说schema_version没有flyway自己制作的某个列作为参考。我浏览了文档和堆栈溢出,发现flyway 3.1和1.5不兼容。SO和文档中提到我们需要先升级到2.3,然后再升级到3.1。但没有提到如何升级。因为仅仅通过添加pom依赖项,似乎并不能解决schema_version问题。

我还尝试将2.3添加到pom中,并启动了基于spring的应用程序,但Flyway仍然无法抛出stacktrace,表示找不到某个列。

确切错误是flyway 1.5自身创建的schema_version表的“where子句”中的未知列“成功”。

请建议如何解决这个问题?

共有1个答案

景俊良
2023-03-14

您可以在发行说明中看到:

  • 与Flyway 1. X元数据表格式的兼容性下降。如果您要从1. X升级,则必须先升级到2.3,然后再升级到3.0。

您必须升级到2.3版。正如您在发行说明中所读到的:

飞行2.1 (2013-03-05)

此版本修复了元数据表的小问题。迁移在第一次运行时是透明和自动的
[…]

Flyway 2.0.2(2012-11-22)

此版本对元数据表执行次要修复。迁移在第一次运行时是透明和自动的
[…]

飞行2.0 (2012-11-14)

此版本带有新的元数据表格式。首次运行时迁移是透明和自动的。

Flyway自行升级其模式。

另请参见:

  • MetaDataTableTo20FormatUpgrader。java
 类似资料:
  • 我需要你的帮助。我正在运行来自另一个Java应用程序的就餐模拟。我打算做的是将就餐版本1.2升级到就餐版本2.0。 我该怎么做? 我试图用它的最新版本(reover 2.0)替换repast.simphony.bin_and_src.jar但发生了这样的错误:

  • 0.2.X

  • 从 0.8.x, 0.9.x, 0.10.0.x, 0.10.1.x, 0.10.2.x, 0.11.0.x 升级到1.0.0 Kafka 1.0.0 介绍了通信协议方面的改变。 遵循下面的滚动升级计划,可以保证您在升级过程中不用停机。 在升级之前,请先查看1.0.0版本中显著的变化。 滚动升级计划: 更新所有代理上的server.properties 并添加以下属性: CURRENT_KAFKA

  • 无非就3个原因吧 为了fix bug 为了新特性 为了爱,就是要追新 从1.a.38开始的版本,升级到最新版的成本都不大. 做到100%兼容是不现实的,但可以肯定的是, 遇到的问题的均有解决的办法. 有些兼容性问题,属于"错误"得到修正,老版本能这样写是"bug", ^_^ 这是一个汇总帖子,随时更新, 也会按版本的增长继续增长.... 请先浏览当前版本到最新版的发行注记,然后再看本列表 IE下a

  • MinDoc 根据发布系统功能不同可分为两步进行升级。有些用户可能会自定义了模板,覆盖时请注意备份。尤其是要注意备份配置文件和数据库。 版本查看 通过命令行执行如下命令: ./mindoc version 会看到如下的版本信息: #当前安装的版本版本号 MinDoc current version => v1.0 #最新版本版本号 MinDoc last version => v1.0 一、覆

  • 问题内容: 因此,我已经安装了Node.js,现在当我尝试安装Mongoosejs时,出现一个错误消息,告诉我我没有所需的Node.js版本(我需要v0.4.11和v0.4.12)。 如何升级到此版本?我想我可以重新安装最新版本,但是在确定不会删除“节点”文件夹中的项目文件夹之前,我不想这样做。 问题答案: Linux / Mac: 该模块使版本管理变得容易: 对于最新的稳定版本: 对于最新版本: