复现
前几天进行业务迁移,在没有任何代码修改的基础上竟然出现了异常,切换到本地环境后,异常也复现了出来:
1 | java.sql.SQLException: Unknown system variable 'query_cache_size' |
解决方案
查看了网上的解决方案,基本上可以确定出异常所在,由于 mysql-connecter-java
的版本过低,导致数据库驱动程序和数据库版本不对应所致。
在官方的说明中, The query cache is deprecated as of MySQL 5.7.20, and is removed in MySQL 8.0. Deprecation includes query_cache_size.
。翻译过来就是 query_cache_size
在 MySQL5.7.20
版本就已经过时了,然后在 MySQL8.0
之后就被移除了。
更新对应的连接驱动程序
1
2
3
4
5
6<!-- https://mvnrepository.com/artifact/mysql/mysql-connector-java -->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.20</version>
</dependency>更换
MySQL
低版本
将MySQL
版本替换为原来使用的版本。
官方版本支持
下表从官网总结了可用的 Connector/JDBC
版本,以及 JDBC
驱动程序类型的详细信息、支持的 JDBC API
版本、支持的 MySQL
服务器版本、支持的 JRE
、构建所需的 JDK
以及每个连接器的支持状态和 JDBC
版本。
供参考使用:
引用
个人备注
此博客内容均为作者学习所做笔记,侵删!
若转作其他用途,请注明来源!