场景:

点击连接 MySQL 的时候出现 Public Key Retrieval is not allowed

解决

编辑连接-》驱动属性设置,设置 true
在这里插入图片描述

点击测试连接如下:
在这里插入图片描述


原因分析:

在 MySQL 中,“Public Key Retrieval” 参数通常与 SSL 连接有关。当你尝试通过 SSL 连接到 MySQL 服务器时,服务器可能会要求客户端提供公钥证书以建立一个加密的安全连接。这个过程涉及到从服务器获取公钥,以便客户端可以验证服务器的身份,并确保数据传输的安全性。

在 JDBC 连接字符串中,如果设置了 “Public Key Retrieval” 参数为 “true” 或 “1”,这通常意味着客户端将尝试从服务器获取公钥证书。这个参数的设置可能会影响连接的建立过程,尤其是在使用自签名证书或非标准证书的情况下。

例如,如果你在连接 MySQL 时遇到了错误或警告,提示无法验证服务器的 SSL 证书,你可能需要检查你的连接字符串中的 “Public Key Retrieval” 参数设置,确保它正确地反映了你的安全需求和服务器配置。

在某些情况下,如果你确定服务器是可信的,并且不希望使用 SSL 连接,你可以选择关闭 SSL 连接,或者在连接字符串中设置 “useSSL=false”。然而,出于安全考虑,建议始终使用 SSL 连接,并确保所有的 SSL 参数都正确配置。

请注意,具体的参数名称和设置可能会根据 MySQL 版本和 JDBC 驱动的不同而有所变化。在处理 SSL 连接和相关参数时,建议参考 MySQL 官方文档和你使用的 JDBC 驱动的文档,以获取最准确和最新的信息。

此外,也可以考虑在连接串上加上该参数,如果是本地调试直接在界面设置下即可。

补充内容

MySQL 连接的时候无法展开数据库,出现了文件缺失的报错信息:
在这里插入图片描述
使用命令 mysqlcheck -u root -p --auto-repair wolf 修补也无济于事。

意外发现: 可以采用如下方法

新建 SQL 编辑器里面,查询缺失的表,比如:

select  * from wolf.market_user_label;

select  * from wolf.market_user_label_category mulc limit 3;

再次展开数据库,下面的表就会出现了。

GitHub 加速计划 / db / dbeaver
38.73 K
3.35 K
下载
DBeaver 是一个通用的数据库管理工具,支持跨平台使用。* 支持多种数据库类型,如 MySQL、PostgreSQL、MongoDB 等;提供 SQL 编辑、查询、调试等功能;支持数据迁移和比较。* 特点:免费开源;界面友好;功能丰富。
最近提交(Master分支:2 个月前 )
4c33020d 2 个月前
83d4cee8 2 个月前
Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐