dbeaver报Public Key Retrieval is not allowed
时间: 2024-08-12 21:05:31 浏览: 205
当您在使用DBeaver(一个开源的数据库管理工具)时遇到 "Public Key Retrieval is not allowed" 这样的错误,通常意味着DBeaver尝试从服务器下载用于加密通信(如SSH连接)的公钥,但是由于安全设置或者权限限制,该请求被拒绝了。
这个错误可能是由于以下几个原因:
1. **防火墙阻止**:检查您的防火墙设置,确保允许DBeaver访问SSL/TLS证书服务器。
2. **SSL证书问题**:如果服务器的SSL证书已过期或者不受信任,DBeaver可能无法验证其身份。
3. **服务器配置**:服务器端可能需要配置允许客户端获取公钥,或者您需要提供一个已知的、受信任的公钥文件。
4. **DBeaver设置**:确保DBeaver中的SSH设置正确,包括密钥管理和身份验证策略。
解决这个问题,您可以尝试以下步骤:
1. 确认网络连接是否正常。
2. 更新DBeaver到最新版本,有时候开发者已经修复此类问题。
3. 检查并修改服务器的SSH配置。
4. 如果是企业环境,咨询IT管理员调整防火墙规则或提供正确的公钥。
相关问题
dbeaver 报Public Key Retrieval is not allowed
### 解决方案
在遇到 `Public Key Retrieval is not allowed` 错误时,通常是因为 MySQL 客户端尝试使用公钥检索来验证服务器的身份,而此功能未被启用或配置不当。可以通过调整 JDBC URL 参数或修改 MySQL 用户权限来解决问题。
#### 方法一:通过JDBC URL禁用公钥检索
可以在 DBeaver 的连接设置中,在 JDBC URL 后面添加参数以禁用公钥检索:
```sql
?allowPublicKeyRetrieval=false&useSSL=false
```
这会告诉客户端不再请求公钥,并关闭 SSL 验证[^1]。
#### 方法二:授予用户公钥检索权限
如果确实需要启用了公钥检索,则可以考虑给特定的 MySQL 用户授予权限。执行如下 SQL 命令:
```sql
GRANT ALL PRIVILEGES ON *.* TO 'your_user'@'%' WITH GRANT OPTION;
FLUSH PRIVILEGES;
```
请注意替换 `'your_user'` 和主机名部分为你实际使用的用户名和主机地址[^2]。
#### 方法三:更新MySQL驱动版本
有时该问题是由于旧版 MySQL Connector/J 导致的兼容性问题引起的。确保正在使用最新稳定发布的 MySQL JDBC Driver 版本可能有助于消除此类错误消息[^3]。
dbeaver,Public Key Retrieval is not allowed Public Key Retrieval is not allowed
当使用dbeaver连接数据库时,有时会出现“Public Key Retrieval is not allowed”的错误提示。这是因为连接设置了不允许公钥检索的情况。解决方法如下:
1.右键数据库——》编辑连接——》驱动属性
2.将“allowPublicKeyRetrieval”设置为true
这样就可以解决这个问题了。
阅读全文
相关推荐
















