我通过在我的pom.xml中添加了Flyway依赖关系激活了Flyway.一切都很好.当我启动Spring Boot应用程序时,我的数据库脚本将被迁移.@H_404_3@
但是我的一个脚本中有一个错误,我的最后一个迁移失败.现在,当我尝试迁移时,有一个“迁移校验和不匹配”.通常,我会运行mvn flyway:修复,但是由于我使用Spring Boot,所以我不应该使用Flyway Maven插件.那我该怎么办?@H_404_3@
解决方法
只需删除迁移失败的行.之后,您可以再次运行迁移.@H_404_3@
直接运行飞行@H_404_3@
您可以在控制台中安装Flyway本地并运行飞行维修@H_404_3@
将Flyway Maven Plugin添加到您的pom并运行mvn flyway:repair.我不认为这与Spring Boot概念相矛盾.@H_404_3@
延长弹簧启动@H_404_3@
Spring Boot will call
Flyway.migrate()
to perform the database migration. If you would like more control,provide a@Bean
that implementsFlywayMigrationStrategy
.@H_404_3@
在FlywayMigrationStrategy中,您可以从飞行路线调用迁移或修复方法.更多信息可在Spring Boot Reference Guide.@H_404_3@
我不认为应用程序中的FlywayMigrationStrategy是修复数据库的正确位置.迁移失败是一个例外,应该在应用程序之外处理.@H_404_3@