DBeaver,Public Key Retrieval is not allowed
时间: 2024-12-27 10:18:46 浏览: 4
### 解决 DBeaver 中 'Public Key Retrieval is not allowed' 错误
在遇到 `Public Key Retrieval is not allowed` 报错时,通常是因为 MySQL 服务器配置与客户端连接设置之间的不兼容所引起的[^3]。
#### 修改连接属性
为了使 DBeaver 正常连接到 MySQL 数据库并解决此问题,需调整连接设置中的特定参数:
1. 打开 DBeaver 并找到对应的数据库连接条目;
2. 右键点击该连接项选择编辑连接选项;
3. 导航至 **连接设置 -> 驱动属性** 页面;
4. 查找名为 `allowPublicKeyRetrieval` 的属性,并将其值更改为 `true`;
5. 应用更改后保存设置并尝试重新建立连接;
```sql
-- 设置 allowPublicKeyRetrieval 参数为 true
SET GLOBAL require_secure_transport=OFF;
```
上述 SQL 命令用于关闭全局安全传输需求,这可能有助于某些情况下解决问题,但在生产环境中应谨慎操作[^2]。
#### 更新 JDBC URL
另一种方法是直接修改 JDBC 连接字符串,在其中显式指定 `allowPublicKeyRetrieval=true`:
```
jdbc:mysql://hostname:port/database?useSSL=false&allowPublicKeyRetrieval=true
```
这样可以在不影响其他地方的情况下仅针对当前会话启用公共密钥检索功能[^1]。
通过以上两种方式之一应该可以有效解决 `Public Key Retrieval is not allowed` 的报错情况。如果仍然存在无法连接的问题,则建议进一步检查网络防火墙设置以及 MySQL 用户权限等问题。
阅读全文