场景:
点击连接 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 驱动的文档,以获取最准确和最新的信息。
此外,也可以考虑在连接串上加上该参数,如果是本地调试直接在界面设置下即可。