Mysql 报错 “Public Key Retrieval is not allowed”

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

解决方法:


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

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

  2. 找到或新增属性:

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

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

ini 复制代码
jdbc:mysql://10.0.71.31:3306/dbname?allowPublicKeyRetrieval=true&useSSL=false

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

如果你可以修改数据库:

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

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


💡 总结:

  • 最快解决 :在 DBeaver 驱动属性里加 allowPublicKeyRetrieval=true
  • 更安全 :把用户改成 mysql_native_password
相关推荐
左直拳1 天前
mysql分区表自动归档
mysql·分区表·分区表归档
haven-8521 天前
MySQL事务ACID、隔离级别、MVCC、幻读解决
数据库·mysql
加加and减减2 天前
Docker真实安装mysql8教程并优化配置
运维·mysql·docker·容器
程序猿乐锅2 天前
【MySQL | 第九篇】MySQL 存储过程
数据库·mysql
王小王-1232 天前
基于深度学习的个性化音乐推荐系统的设计与开发
人工智能·深度学习·mysql·vue·推荐算法·个性化音乐推荐系统·音乐预测
xuefuhe2 天前
MySQL8.4 tar.xz安装
mysql
五阿哥永琪2 天前
正则表达式
数据库·mysql·正则表达式
LaughingZhu2 天前
Product Hunt 每日热榜 | 2026-06-13
数据库·mysql
sulikey2 天前
数据库中等值连接与自然连接的区别。为什么不建议使用自然连接?
数据库·sql·mysql·等值连接·自然连接
周末也要写八哥2 天前
数据库安装 | MySQL 8.0.32安装教程及网盘下载地址
数据库·mysql