【问题标题】:Springboot version upgrade - my sql errorSpring Boot版本升级——mysql报错
【发布时间】:2021-01-20 05:16:06
【问题描述】:

我们正在尝试通过build.gradle 依赖项升级我们的项目:

  • spring-boot 从版本 1.5.72.3.3

  • 从版本Gradle-4.8-all 升级到Gradle-6.4.1-all

我们收到以下错误:

Error creating bean with name 'flywayInitializer' defined in class path resource [org/springframework/boot/autoconfigure/flyway/FlywayAutoConfiguration$FlywayConfiguration.class]: Invocation of init method failed; nested exception is org.flywaydb.core.internal.command.DbMigrate$FlywayMigrateException: 
    Migration V3__Sequence_Table.sql failed
    ---------------------------------------
    SQL State  : 42001
    Error Code : 42001
    Message    : Syntax error in SQL statement "DELIMITER[*]   

JDBC 连接 URL 前面提到过。

o.f.c.internal.database.DatabaseFactory  : Database: jdbc:mysql://xxxxx:3306/mydb (MySQL 5.7)

现在已更改如下,

o.f.c.internal.database.DatabaseFactory  : Database: jdbc:h2:mem:testdb (H2 1.4)

这是导致上述flyway迁移错误的原因吗?

【问题讨论】:

  • SQL Flyway 是否正在尝试执行特定于 MySQL 的操作? H2 数据库可能不兼容 MySQL 的所有 SQL 功能。看看这个stackoverflow.com/questions/53047481/… 和链接的问题。也许有帮助。
  • 谢谢,@Sebastian。如 [stackoverflow.com/questions/40247283/… 中所述,尝试使用 spring.datasource.platform=mysql 指定 MYSQL。但它没有锻炼。
  • 您的项目中哪个数据库是正确的?您使用的是 MySQL 还是 H2?我真的不知道哪一个是正确的。
  • 是的,它是 MySQL。 @塞巴斯蒂安
  • 好的,您已将 JDBC URL 更改为 jdbc:h2:mem:testdb?

标签: mysql spring-boot gradle jdbc h2


【解决方案1】:

问题:

jar 文件的Run 命令是这个项目的问题`

Dspring.config.location=run.properties 这个命令只执行 run.properties

解决方案:

除了上面的run 命令,你应该试试这个jar 文件的运行命令

  Dspring.config.additional-location=run.properties

我正在尝试我的项目,效果很好

【讨论】:

    猜你喜欢
    • 2019-05-19
    • 2021-11-16
    • 2021-06-16
    • 1970-01-01
    • 2021-01-22
    • 1970-01-01
    • 1970-01-01
    • 2022-06-24
    • 2022-11-25
    相关资源
    最近更新 更多