dbeaver报错Public Key Retrieval is not allowed
时间: 2025-04-22 18:56:56 浏览: 46
### 解决 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 添加参数以禁用公钥检索功能。具体做法如下所示:
进入 DBeaver 数据库连接属性页面,在“JDBC Options”部分添加或修改名为 `allowPublicKeyRetrieval` 的参数并将其值设为 false;同时确保启用了 SSL 验证选项(即设置 `useSSL=true`) 或者完全关闭 SSL (`useSSL=false`) ,取决于实际需求和环境安全策略:
```
?serverTimezone=UTC&useSSL=false&allowPublicKeyRetrieval=false
```
此调整可以防止尝试从服务器获取 RSA 公钥的行为发生,进而绕过该错误提示[^2]。
通过以上两种途径之一应该能有效解决在 DBeaver 上遇到的 `'Public Key Retrieval is not allowed'` 报错情况。
阅读全文
相关推荐


















