使用 Java 应用(Druid 连接池)连接 GreatSQL(万里数据库)...
本帖最后由 lvhejin 于 2026-1-19 11:30 编辑<blockquote>2026-01-19 11:18:00.742 |
解决方案:
一、问题核心定位
你使用 Java 应用(Druid 连接池)连接 GreatSQL(万里数据库)时失败,根因是异常栈中明确的 Public Key Retrieval is not allowed —— GreatSQL 8.0+ 版本默认使用 caching_sha2_password 认证插件,Java 客户端连接时若未允许 “公钥检索”,会被数据库拒绝连接,且重试 3 次后放弃。
二、快速解决方案(修改 JDBC 连接 URL)
这是最直接的修复方式,在你的 JDBC URL 中添加 allowPublicKeyRetrieval=true 参数即可解决。
谢谢分享:handshake
已经更新到FAQ案例中,并做了内容扩展 https://greatsql.cn/docs/8.4.4-4/11-faq/5-faq-others.html#_22-java%E5%BA%94%E7%94%A8%E8%BF%9E%E6%8E%A5%E5%A4%B1%E8%B4%A5-%E6%8F%90%E7%A4%BA%E9%94%99%E8%AF%AF-public-key-retrieval-is-not-allowed
这个方法不错,值得推荐。
页:
[1]