我在为应用创建表时导入了数据集。但是,当我尝试启动服务器时以及在EAR部署期间,我遇到Flyway迁移错误。错误为:Database migration failed.: org.flywaydb.core.api.FlywayException: Validate failed: Detected failed migration to version 1 (BASELINE)
我已经检查了dev.xml中的所有数据库信息都是正确的,并且检查了flyway_schema_history中的错误,但是没有错误。
我以前看到过一个通信链接错误,但现在已经消失了。有人能解释一下这个问题吗?因为我觉得没有任何脚本在运行,包括基线。
错误的堆栈跟踪:
2019-04-10 16:54:48,544 ERROR [com.cognitran.isis.model.migration.TopixFlywayIntegrator] (ServerService Thread Pool -- 2) Database migration failed.: org.flywaydb.core.api.FlywayException: Validate failed: Detected >failed migration to version 1 (BASELINE)```
at org.flywaydb.core.Flyway.doValidate(Flyway.java:1375)
at org.flywaydb.core.Flyway.access$100(Flyway.java:82)
at org.flywaydb.core.Flyway$1.execute(Flyway.java:1257)
at org.flywaydb.core.Flyway$1.execute(Flyway.java:1249)
at org.flywaydb.core.Flyway.execute(Flyway.java:1604)
at org.flywaydb.core.Flyway.migrate(Flyway.java:1249)
1条答案
按热度按时间nhjlsmyf1#
“数据库迁移失败。:org.flywaydb.core.api.FlywayException:验证失败:检测到迁移到版本1失败(基线)”
这意味着你之前运行了migrate,但由于某种原因,它在1处失败了。你需要确定为什么上一次迁移在1处失败,如果你还没有这样做,你需要解决它。一旦解决了,你需要运行
flyway repair
来告诉flyway,无论失败的是什么,都已经解决了。根据您如何设置和运行
flyway
,有几个选项可以运行修复:mvn flyway:repair
。如果使用intelliJ,则在maven插件maven -> <service name> -> plugins -> flyway -> flyway:repair
中有此功能brew
),则只需在控制台中运行flyway repair
如果再次失败,则返回步骤1。