使用 mvn flyway:migrate 的 Flyway 迁移给出“迁移 1.0.53 不匹配”错误
Posted
技术标签:
【中文标题】使用 mvn flyway:migrate 的 Flyway 迁移给出“迁移 1.0.53 不匹配”错误【英文标题】:Flyway Migration with mvn flyway:migrate is giving "Mismatch for migration 1.0.53" error 【发布时间】:2021-11-20 09:49:24 【问题描述】:我在 flyway 的 CMD 中运行 mvn flyway:migrate
命令,但是脚本文件的迁移给出了以下异常
[错误] 无法执行目标 org.flywaydb:flyway-maven-plugin:3.2.1:migrate (default-cli) on project convertopia-auto-db: org.flywaydb.core.api.FlywayException: Validate failed .迁移 1.0.53 的迁移描述不匹配 [错误] -> 应用于数据库:从可为空的更新规则类型列有效 [错误] -> 本地解决:更新规则类型列从可为空有效 - 复制 - 复制 [错误] -> [帮助 1] [错误] [错误] 要查看错误的完整堆栈跟踪,请使用 -e 开关重新运行 Maven。 [错误] 使用 -X 开关重新运行 Maven 以启用完整的调试日志记录。 [错误] [错误] 有关错误和可能的解决方案的更多信息,请阅读以下文章: [错误] [帮助1] http://cwiki.apache.org/confluence/display/MAVEN/MojoExecutionException
我试过mvn flyway:repair
,它说构建成功,但问题仍然没有解决。实际上我已经在脚本文件夹中添加了更多文件,我想迁移它们。当我尝试mvn flyway:info
时,它返回给我:
如您所见,最后两个(突出显示的)文件未迁移
另外,请告诉我如何在windows中创建扩展名为“.sql”的“SQL文本文件”?
【问题讨论】:
【参考方案1】:通过删除 update rule type column valid from nullable - Copy - Copy 文件自己解决了这个问题,该文件我的目录中不存在。我知道这个文件夹导致了这个问题,所以我必须删除它,但它不在我的目录中。所以,我去 source Tree 并奇怪地在那里找到了那个文件夹。
从源代码树中删除这个重复的文件夹解决了我的问题...
之后,mvn flyway:repair
更新了我的文件,迁移成功。
【讨论】:
以上是关于使用 mvn flyway:migrate 的 Flyway 迁移给出“迁移 1.0.53 不匹配”错误的主要内容,如果未能解决你的问题,请参考以下文章