dbeaver鏈接mysql8.0報錯Public Key Retrieval is not allowed
时间: 2025-01-18 07:55:56 浏览: 98
### DBeaver 连接 MySQL 8.0 出现 "Public Key Retrieval is not allowed" 错误解决方案
当尝试通过 DBeaver 连接到 MySQL 8.0 数据库并遇到 `Public Key Retrieval is not allowed` 的错误时,这通常是因为 MySQL 8.0 默认启用了公钥检索功能来增强安全性。然而,在某些情况下,客户端驱动程序可能不支持此特性或配置不当。
#### 修改 JDBC URL 参数
一种常见的解决办法是在连接字符串中加入特定参数以禁用公钥检索机制:
```sql
jdbc:mysql://localhost:3306/your_database?allowPublicKeyRetrieval=false&useSSL=false
```
上述设置明确告知服务器端不需要执行公钥获取操作,并关闭 SSL 加密选项[^1]。
#### 更新 MySQL 驱动版本
确保使用的 MySQL Connector/J 版本是最新的,因为较新版本已经修复了许多兼容性和安全方面的问题。可以从官方网站下载最新版的 MySQL Java Driver 并替换旧文件[^2]。
#### 调整 MySQL 用户权限
如果仍然无法解决问题,则可以考虑调整用户的账户属性,允许其绕过严格的认证模式:
```sql
ALTER USER 'username'@'host' IDENTIFIED WITH mysql_native_password BY 'password';
FLUSH PRIVILEGES;
```
这段 SQL 将指定用户的身份验证方式改为更传统的 `mysql_native_password` 方法而不是默认的安全插件[^3]。
#### 安全注意事项
尽管以上措施能有效消除该警告信息,但在生产环境中应谨慎对待任何涉及降低安全性的更改。建议仅在测试环境内实施这些变更,并评估潜在风险后再决定是否应用于正式部署。
阅读全文
相关推荐


















