问题一:新的SpringBoot项目能够正常连接MySQL,老的Spring不能连接。
出现这个现象,我猜测新的项目肯定用的新的包,所以能够正常。经过排查,发现老项目的MySQL驱动包还是使用的5.7的。所以对项目进行升级,直接修改POM文件的对应版本号。
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.21</version>
</dependency>
问题二:使用 Navicat 无法远程登录
解决方案:MySQL 支持远程登录
问题三:Loading class com.mysql.jdbc.Driver
. This is deprecated
原来的驱动 com.mysql.jdbc.Driver
已被弃用,需使用新的驱动 com.mysql.cj.jdbc.Driver
。
问题四:不能识别时区
需要指定时区,我们在url链接后在增加 serverTimezone=Asia/Shanghai
问题五:Establishing SSL connection without server’s identity verification is not recommended.
MySQL在高版本需要指明是否进行SSL连接,所以在 url 链接后在增加 useSSL=true
最后完整的 URL 如下:
jdbc_url=jdbc:mysql://ip:port/数据库?serverTimezone=Asia/Shanghai&useUnicode=true&characterEncoding=utf-8&useSSL=true
技 术 无 他, 唯 有 熟 尔。
知 其 然, 也 知 其 所 以 然。
踏 实 一 些, 不 要 着 急, 你 想 要 的 岁 月 都 会 给 你。