1、下午打包过程中出现了一个问题:
java.sql.SQLException: java.lang.ClassCastException: java.math.BigInteger cannot be cast to java.lang.Long
mysql开发环境用的5.7.30,本次线上用的8.0.20,两个版本数据库连接方式不一样导致这样的错误。
在5之后的版本,drivername和url要改成下边这种
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.url=jdbc:mysql://localhost/test?serverTimezone=UTC&characterEncoding=utf8&useUnicode=true&useSSL=false
2、第一种想法就是mysql-connector-java包版本由5.1.28改为和mysql一致的8.0.20,但是又报:
CLIENT_PLUGIN_AUTH is required
百度都说因为mysql-connector-java版本过高,可是我的版本和mysql刚好对应上,以为是另一个相关jar包mybatis-spring-boot-starter的版本太低不兼容,也需要对应的高版本,经过多次尝试,依然没有没解决。最后查到官方的说明:
发现5.1也可以兼容mysql8,然后直接在网上查到5的最后一个版本是5.1.49
3、结果又报了一个时间转换的错误,把druid包升到最新的1.1.23,终于解决了这个问题。