Mysql 报错 “Public Key Retrieval is not allowed”
2026/4/14 18:03:48 网站建设 项目流程

报错 “Public Key Retrieval is not allowed” 出现的原因和之前分析的一样:MySQL 用户使用了caching_sha2_password认证,而 DBeaver 默认不允许自动获取公钥。

解决方法:


方法 A:在 DBeaver 中修改连接属性

  1. 点击编辑驱动设置 → 驱动属性(Driver Properties)

  2. 找到或新增属性:

    • allowPublicKeyRetrievaltrue
    • useSSLfalse(如果你不使用 SSL)
  3. 保存后再测试连接。

示例 JDBC URL 形式(DBeaver 可以自动拼接):

jdbc:mysql://10.0.71.31:3306/dbname?allowPublicKeyRetrieval=true&useSSL=false

方法 B:修改 MySQL 用户认证方式

如果你可以修改数据库:

ALTER USER 'dzm'@'%' IDENTIFIED WITH mysql_native_password BY '你的密码'; FLUSH PRIVILEGES;

然后在 DBeaver 里直接连接即可,无需修改额外参数。


💡 总结:

  • 最快解决:在 DBeaver 驱动属性里加allowPublicKeyRetrieval=true
  • 更安全:把用户改成mysql_native_password

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询