flyway在项目中遇到的Migration checknum mismatch for migration version

这篇文章是继上一篇flyway-数据库版本管理工具之后写的,如果对flyway不太清楚可以先去看看这篇。

下面是项目中使用时遇见的问题

flyway的sql文件

下面是目前项目中的flyway文件夹下的sql文件(图1),因为目前我们都是在公共开发数据库开发的,所以就初期开启过flyway,后面关了,不过最近准备到部署到测试环境,打开flyway发现启动报版本错误(图2)(因为之前开启过flyway,所以有记录表),可以看出来flyway通过检查数据库的记录表时发现数据对不上,所以抛出版本冲突的错误,具体是哪个文件也会指出(图3)。通过查看git提交记录发现有同事修改过sql文件。

解决

在使用flyway的时候,不管修改了什么都不要动原有的sql文件,请直接加到最后面。避免启动的时候检查不通过。
如果已经修改过了,就看是哪条sql报错,到flyway_schema_history表中去把该条记录以及后面的记录全部删掉,重启项目就OK了


flyway在项目中遇到的Migration checknum mismatch for migration version_第1张图片
图1

flyway在项目中遇到的Migration checknum mismatch for migration version_第2张图片
图2
图3

你可能感兴趣的:(flyway在项目中遇到的Migration checknum mismatch for migration version)