Spring Boot版本升级——mysql报错
Posted
技术标签:
【中文标题】Spring Boot版本升级——mysql报错【英文标题】:Springboot version upgrade - my sql error 【发布时间】:2021-01-20 05:16:06 【问题描述】:我们正在尝试通过build.gradle
依赖项升级我们的项目:
spring-boot 从版本 1.5.7
到 2.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 功能。看看这个***.com/questions/53047481/… 和链接的问题。也许有帮助。 谢谢,@Sebastian。如 [***.com/questions/40247283/… 中所述,尝试使用spring.datasource.platform=mysql
指定 MYSQL。但它没有锻炼。
您的项目中哪个数据库是正确的?您使用的是 MySQL 还是 H2?我真的不知道哪一个是正确的。
是的,它是 MySQL。 @塞巴斯蒂安
好的,您已将 JDBC URL 更改为 jdbc:h2:mem:testdb
?
【参考方案1】:
问题:
jar
文件的Run
命令是这个项目的问题`
Dspring.config.location=run.properties
这个命令只执行 run.properties
解决方案:
除了上面的run
命令,你应该试试这个jar
文件的运行命令
Dspring.config.additional-location=run.properties
我正在尝试我的项目,效果很好
【讨论】:
以上是关于Spring Boot版本升级——mysql报错的主要内容,如果未能解决你的问题,请参考以下文章
Spring Boot配置FastJson报错'Content-Type' cannot contain wildcard type '*'
Springboot 2.3.8.RELEASE升级到2.5.12 Junit报错
Spring Boot连接MySQL长时间不连接后报错`com.mysql.cj.core.exceptions.ConnectionIsClosedException: No operations