lvhejin 发表于 2026-1-19 11:28:30

使用 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 参数即可解决。

yejr 发表于 2026-1-19 12:32:15

谢谢分享: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

reddey 发表于 2026-1-21 14:58:12

这个方法不错,值得推荐。
页: [1]
查看完整版本: 使用 Java 应用(Druid 连接池)连接 GreatSQL(万里数据库)...