【问题标题】:dbeaver Unknown system variable 'query_cache_size'dbeaver 未知系统变量 'query_cache_size'
【发布时间】:2021-01-08 13:06:07
【问题描述】:

尝试连接 mysql 时,我收到此错误:Unknown system variable 'query_cache_size'

我可以从终端和 mysql 工作台正常连接。

mysql版本是8.0.20,dbeaver版本是7.3.2.202101032114。

2021-01-08 17:48:34.259 - Connection failed (mysql8-176e1ef2163-350bcdbb3d40cc61)
2021-01-08 17:48:34.260 - org.jkiss.dbeaver.model.exec.DBCConnectException: Unknown system variable 'query_cache_size'
org.jkiss.dbeaver.model.exec.DBCConnectException: Unknown system variable 'query_cache_size'
    at org.jkiss.dbeaver.model.impl.jdbc.JDBCDataSource.openConnection(JDBCDataSource.java:222)
    at org.jkiss.dbeaver.ext.mysql.model.MySQLDataSource.openConnection(MySQLDataSource.java:419)
    at org.jkiss.dbeaver.model.impl.jdbc.JDBCExecutionContext.connect(JDBCExecutionContext.java:101)
    at org.jkiss.dbeaver.model.impl.jdbc.JDBCRemoteInstance.initializeMainContext(JDBCRemoteInstance.java:95)
    at org.jkiss.dbeaver.model.impl.jdbc.JDBCRemoteInstance.<init>(JDBCRemoteInstance.java:57)
    at org.jkiss.dbeaver.model.impl.jdbc.JDBCDataSource.initializeRemoteInstance(JDBCDataSource.java:110)
    at org.jkiss.dbeaver.model.impl.jdbc.JDBCDataSource.<init>(JDBCDataSource.java:98)
    at org.jkiss.dbeaver.model.impl.jdbc.JDBCDataSource.<init>(JDBCDataSource.java:90)
    at org.jkiss.dbeaver.ext.mysql.model.MySQLDataSource.<init>(MySQLDataSource.java:90)
    at org.jkiss.dbeaver.ext.mysql.MySQLDataSourceProvider.openDataSource(MySQLDataSourceProvider.java:127)
    at org.jkiss.dbeaver.registry.DataSourceDescriptor.connect(DataSourceDescriptor.java:880)
    at org.jkiss.dbeaver.runtime.jobs.ConnectJob.run(ConnectJob.java:70)
    at org.jkiss.dbeaver.runtime.jobs.ConnectionTestJob.run(ConnectionTestJob.java:103)
    at org.jkiss.dbeaver.model.runtime.AbstractJob.run(AbstractJob.java:105)
    at org.eclipse.core.internal.jobs.Worker.run(Worker.java:63)
Caused by: java.sql.SQLException: Unknown system variable 'query_cache_size'
    at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:129)
    at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:97)
    at com.mysql.cj.jdbc.exceptions.SQLExceptionsMapping.translateException(SQLExceptionsMapping.java:122)
    at com.mysql.cj.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:836)
    at com.mysql.cj.jdbc.ConnectionImpl.<init>(ConnectionImpl.java:456)
    at com.mysql.cj.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:246)
    at com.mysql.cj.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:198)
    at org.jkiss.dbeaver.model.impl.jdbc.JDBCDataSource.lambda$0(JDBCDataSource.java:177)
    at org.jkiss.dbeaver.model.impl.jdbc.JDBCDataSource.openConnection(JDBCDataSource.java:196)
    ... 14 more
2021-01-08 17:48:34.318 - Unknown system variable 'query_cache_size'
java.sql.SQLException: Unknown system variable 'query_cache_size'
    at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:129)
    at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:97)
    at com.mysql.cj.jdbc.exceptions.SQLExceptionsMapping.translateException(SQLExceptionsMapping.java:122)
    at com.mysql.cj.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:836)
    at com.mysql.cj.jdbc.ConnectionImpl.<init>(ConnectionImpl.java:456)
    at com.mysql.cj.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:246)
    at com.mysql.cj.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:198)
    at org.jkiss.dbeaver.model.impl.jdbc.JDBCDataSource.lambda$0(JDBCDataSource.java:177)
    at org.jkiss.dbeaver.model.impl.jdbc.JDBCDataSource.openConnection(JDBCDataSource.java:196)
    at org.jkiss.dbeaver.ext.mysql.model.MySQLDataSource.openConnection(MySQLDataSource.java:419)
    at org.jkiss.dbeaver.model.impl.jdbc.JDBCExecutionContext.connect(JDBCExecutionContext.java:101)
    at org.jkiss.dbeaver.model.impl.jdbc.JDBCRemoteInstance.initializeMainContext(JDBCRemoteInstance.java:95)
    at org.jkiss.dbeaver.model.impl.jdbc.JDBCRemoteInstance.<init>(JDBCRemoteInstance.java:57)
    at org.jkiss.dbeaver.model.impl.jdbc.JDBCDataSource.initializeRemoteInstance(JDBCDataSource.java:110)
    at org.jkiss.dbeaver.model.impl.jdbc.JDBCDataSource.<init>(JDBCDataSource.java:98)
    at org.jkiss.dbeaver.model.impl.jdbc.JDBCDataSource.<init>(JDBCDataSource.java:90)
    at org.jkiss.dbeaver.ext.mysql.model.MySQLDataSource.<init>(MySQLDataSource.java:90)
    at org.jkiss.dbeaver.ext.mysql.MySQLDataSourceProvider.openDataSource(MySQLDataSourceProvider.java:127)
    at org.jkiss.dbeaver.registry.DataSourceDescriptor.connect(DataSourceDescriptor.java:880)
    at org.jkiss.dbeaver.runtime.jobs.ConnectJob.run(ConnectJob.java:70)
    at org.jkiss.dbeaver.runtime.jobs.ConnectionTestJob.run(ConnectionTestJob.java:103)
    at org.jkiss.dbeaver.model.runtime.AbstractJob.run(AbstractJob.java:105)
    at org.eclipse.core.internal.jobs.Worker.run(Worker.java:63)

【问题讨论】:

标签: mysql dbeaver


【解决方案1】:

在从 dbeaver 社区版本连接到 MySQL8 时,我也遇到了同样的问题“未知系统变量 'query_cache_size'”。尝试了所有版本的 MySQL Java 连接器(mysql:mysql-connector-java)它没有工作。 Dbeaver 中的 MariaDB 驱动程序为我工作。尝试 MariaDb 驱动连接 MySQL8。它会起作用的。

<groupId>org.mariadb.jdbc</groupId>
<artifactId>mariadb-java-client</artifactId>

【讨论】:

    【解决方案2】:

    我今天在全新安装后尝试连接到本地 mysql 数据库时遇到了同样的问题。原来是mysql版本不匹配。流行选项卡中默认显示的“MySql”选项适用于 Mysql 版本 4+。它连接了一个较旧的连接器。我本地安装的 MySql 服务器版本是 8.0.23。这种组合不起作用。在新的连接窗口中,如果您在搜索框中键入 mysql,它会显示所有 MySql 版本[参见下面的附件-选项 2]。从中我选择了“MySql 8+”,它提示我在创建新连接时下载正确的连接器。这没有任何问题。

    【讨论】:

    • dbeaver 中没有为我列出 MySQL8+
    • MySQL8+ 也没有为我列出。对我有用的是使用 mariadb 驱动程序。
    • @RajeshM 和 Firoz:你确定你选择了左侧列表中的“全部”选项吗?(见我上面的屏幕截图)如果“流行”,它不会显示选项被选中。
    • 我正在使用 Mac OS 支持的社区版 dbeaver 版本 21.0.5.202105160657,于 2021 年 5 月 17 日发布。但这个版本还没有 MySQL 8+
    猜你喜欢
    • 2018-10-03
    • 2022-01-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-08-09
    • 1970-01-01
    • 1970-01-01
    • 2013-03-27
    相关资源
    最近更新 更多