dbeaver 报错Public Key Retrieval is not allowed
时间: 2025-04-22 14:51:35 浏览: 39
### 解决 DBeaver 中 'Public Key Retrieval is not allowed' 错误
#### 修改 MySQL 用户认证方式
一种解决方案是更改 MySQL 用户的默认身份验证方法。MySQL 8.0 版本引入了 `caching_sha2_password` 插件作为默认的身份验证机制,这可能与某些旧版本客户端不兼容[^3]。
可以通过执行 SQL 命令来修改用户的密码插件:
```sql
ALTER USER 'your_username'@'localhost' IDENTIFIED WITH mysql_native_password BY 'your_password';
FLUSH PRIVILEGES;
```
此命令会将指定用户的认证方式更改为更为传统的 `mysql_native_password` 方法,从而避免因公钥检索问题引发的连接失败。
#### 调整 JDBC URL 参数
另一种办法是在 DBeaver 的数据库连接配置中的 JDBC URL 添加参数以禁用公钥检索功能。具体做法如下所示,在原有地址后面附加特定选项:
```plaintext
?allowPublicKeyRetrieval=true&useSSL=false
```
完整的 JDBC URL 可能看起来像这样:
```plaintext
jdbc:mysql://hostname:port/database_name?allowPublicKeyRetrieval=true&useSSL=false
```
通过这种方式可以显式告知驱动程序允许进行公钥检索操作,并关闭 SSL 加密(如果不需要的话),进而绕过该错误提示[^2]。
#### 更新 MySQL Connector/J 驱动版本
确保使用的 MySQL Connector/J 是最新稳定版也很重要。较新的驱动通常包含了针对此类常见问题的修复和支持改进。可以从官方渠道下载并安装最新的驱动文件到 DBeaver 当中[^1]。
阅读全文
相关推荐




















