Error querying database. Cause: com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException: Public Key Retrieval is not allowed
时间: 2023-11-26 20:48:22 浏览: 179
"password");
```
2.在连接URL中添加参数
```java
// 建立连接<result column
String url = "jdbc="tid" property:mysql://localhost:3306/test?allowPublicKeyRetrieval=true";
Connection conn = DriverManager.getConnection(url, "root="id"/> 中的id为红色是因为它是一个属性名,而不是关", "password");
```键字或保留字。在许多代码编辑器中,属性名通常会以不同的颜色显示,以便更容易地区分它们与其他关键字或保
相关问题
Error querying database. Cause: java.sql.SQLNonTransientConnectionException: Public Key Retrieval is not allowed
当你遇到 "Error querying database. Cause: java.sql.SQLNonTransientConnectionException: Public Key Retrieval is not allowed" 这样的错误时,这通常是在数据库连接过程中遇到了安全问题。SQL NonTransientConnectionException 提示存在一个非临时性的连接问题,而 "Public Key Retrieval is not allowed" 则意味着系统无法获取或验证用于加密通信(如SSL/TLS)的公共密钥。
可能是以下几个原因导致:
1. **服务器配置**:数据库服务器可能设置了严格的权限,不允许从客户端直接获取公钥信息。你需要检查服务器的SSL设置,确保允许连接的客户端证书。
2. **证书问题**:客户端使用的证书可能无效或未正确安装。确保客户端证书是最新的,并且数据库服务器已经信任了这个证书。
3. **网络代理**:有些防火墙或网络安全设备可能会阻止公钥的传输,需要在这些设备上配置正确的规则。
4. **代码错误**:如果你正在编写应用程序,可能是代码中处理连接的部分有误,比如没有正确设置证书路径或忽略了一些必要的SSL配置。
解决这个问题需要定位到具体的应用场景,根据上述情况排查并修复相应的配置。如果需要进一步帮助,可以提供更具体的日志信息和上下文。
Error querying database. Cause: com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure
发生"Error querying database. Cause: com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure"的错误通常是由于数据库连接问题导致的。在引用和引用中提到了这个错误的具体信息,包括通信链路失败和最后一个成功接收到的数据包时间等信息。可以通过检查数据库连接配置或者网络连接来解决这个问题。
首先,可以检查数据库连接配置是否正确。引用中提到了一个可能的解决方法,即将"useSSL"参数设置为false。这可以通过修改数据库连接URL来实现。确保URL中的参数正确设置,以便与数据库服务器进行正确的通信。
其次,可以检查网络连接是否正常。由于通信链路失败,可能是由于网络连接中断或不稳定导致的。可以尝试使用其他网络连接或者重启网络设备来解决连接问题。
另外,还可以检查数据库服务器的资源使用情况。如果存在大量已完成但未断开的数据库连接,可能会导致数据库服务器内存资源的浪费。可以通过监控和管理数据库连接来确保及时释放资源。
综上所述,出现"Error querying database. Cause: com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure"错误可以通过检查数据库连接配置、网络连接和数据库服务器资源来解决。<span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* *3* [Error querying database. Cause: com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communica](https://blog.csdn.net/yuanyuan320/article/details/118607500)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 50%"]
- *2* [### Error querying database. Cause: com.mysql.jdbc.exceptions.jdbc4.CommunicationsException](https://blog.csdn.net/chenbinqq/article/details/77718634)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 50%"]
[ .reference_list ]
阅读全文