JDBC接続MySQLエラー不明なシステム変数「query_cache_size」

序文

最近、mybatis-generatorデータベース逆生成ツールを使用すると、次のエラーが発生しましたjava.sql.SQLException: Unknown system variable 'query_cache_size'
ここに写真の説明を挿入

1.理由分析

  1. 接続されているデータベースのバージョンが8.0.20
  2. プロジェクトで使用されるJDBCドライバーのmysql-connector-javaバージョンは5.1.41
  3. MYSQL公式ウェブサイトで関連文書を照会する

公式ウェブサイトステートメント:

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 在MySQL 5.7.20 已经过时了,并且在MySQL 8.0 版本中被移除了。

明らかに、データベースドライバとデータベースバージョンは一貫していません。

2、バージョン対応表

次の表は、mysql-connector-javaとJDBC、MySQL、JRE、およびJDKのバージョン間の対応をまとめたものです。

ここに写真の説明を挿入

三、解決策

2.1より高いバージョンのドライバーを導入する

<dependency>
    <groupId>mysql</groupId>
    <artifactId>mysql-connector-java</artifactId>
    <version>8.0.11</version>
</dependency>

2.2接続構成情報の変更

spring:
  datasource: # 数据源的相关配置
    driver-class-name: com.mysql.cj.jdbc.Driver #从com.mysql.jdbc.Driver修改为com.mysql.cj.jdbc.Driver
    url: jdbc:mysql://localhost:3306/shop?useSSL=false&useUnicode=true&characterEncoding=UTF-8&autoReconnect=true&serverTimezone=UTC

または、バージョン5.1.49を導入することも可能であるため、接続構成情報を変更する必要はありません。

<dependency>
    <groupId>mysql</groupId>
    <artifactId>mysql-connector-java</artifactId>
    <version>8.0.11</version>
</dependency>
spring:
  datasource: # 数据源的相关配置
    driver-class-name: com.mysql.jdbc.Driver
    url: jdbc:mysql://localhost:3306/shop?&useUnicode=true&characterEncoding=UTF-8&autoReconnect=true

おすすめ

転載: blog.csdn.net/chenlixiao007/article/details/109019511