当前位置: 首页 > news >正文

Java:链接mysql数据库报错:CommunicationsException: Communications link failure

目录

    • 简介
    • 异常信息
    • 排查
    • 原因
    • 解决


简介

1、Java程序链接mysql数据库报错

2、其他Java程序链接该数据库是正常的


异常信息

2025-05-30 18:04:17.131 - [32m[ERROR][0;39m - [Druid-ConnectionPool-Create-1346351097] - [1;34m[com.alibaba.druid.pool.DruidDataSource - line:2469][0;39m: create connection SQLException, url: jdbc:mysql://192.168.1.116:3306/xxxDataBase?useSSL=true&useUnicode=true&characterEncoding=UTF-8&serverTimezone=GMT%2B8, errorCode 0, state 08S01
com.mysql.cj.jdbc.exceptions.CommunicationsException: Communications link failureThe last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server.at com.mysql.cj.jdbc.exceptions.SQLError.createCommunicationsException(SQLError.java:174)at com.mysql.cj.jdbc.exceptions.SQLExceptionsMapping.translateException(SQLExceptionsMapping.java:64)at com.mysql.cj.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:835)at com.mysql.cj.jdbc.ConnectionImpl.<init>(ConnectionImpl.java:455)at com.mysql.cj.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:240)at com.mysql.cj.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:199)at com.alibaba.druid.filter.FilterChainImpl.connection_connect(FilterChainImpl.java:149)at com.alibaba.druid.filter.FilterAdapter.connection_connect(FilterAdapter.java:786)at com.alibaba.druid.filter.FilterChainImpl.connection_connect(FilterChainImpl.java:143)at com.alibaba.druid.filter.FilterAdapter.connection_connect(FilterAdapter.java:786)at com.alibaba.druid.filter.FilterChainImpl.connection_connect(FilterChainImpl.java:143)at com.alibaba.druid.filter.stat.StatFilter.connection_connect(StatFilter.java:218)at com.alibaba.druid.filter.FilterChainImpl.connection_connect(FilterChainImpl.java:143)at com.alibaba.druid.pool.DruidAbstractDataSource.createPhysicalConnection(DruidAbstractDataSource.java:1515)at com.alibaba.druid.pool.DruidAbstractDataSource.createPhysicalConnection(DruidAbstractDataSource.java:1578)at com.alibaba.druid.pool.DruidDataSource$CreateConnectionThread.run(DruidDataSource.java:2466)
Caused by: com.mysql.cj.exceptions.CJCommunicationsException: Communications link failureThe last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server.at sun.reflect.GeneratedConstructorAccessor73.newInstance(Unknown Source)at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)at java.lang.reflect.Constructor.newInstance(Constructor.java:423)at com.mysql.cj.exceptions.ExceptionFactory.createException(ExceptionFactory.java:61)at com.mysql.cj.exceptions.ExceptionFactory.createException(ExceptionFactory.java:105)at com.mysql.cj.exceptions.ExceptionFactory.createException(ExceptionFactory.java:151)at com.mysql.cj.exceptions.ExceptionFactory.createCommunicationsException(ExceptionFactory.java:167)at com.mysql.cj.protocol.a.NativeProtocol.negotiateSSLConnection(NativeProtocol.java:361)at com.mysql.cj.protocol.a.NativeAuthenticationProvider.negotiateSSLConnection(NativeAuthenticationProvider.java:777)at com.mysql.cj.protocol.a.NativeAuthenticationProvider.proceedHandshakeWithPluggableAuthentication(NativeAuthenticationProvider.java:486)at com.mysql.cj.protocol.a.NativeAuthenticationProvider.connect(NativeAuthenticationProvider.java:202)at com.mysql.cj.protocol.a.NativeProtocol.connect(NativeProtocol.java:1449)at com.mysql.cj.NativeSession.connect(NativeSession.java:165)at com.mysql.cj.jdbc.ConnectionImpl.connectOneTryOnly(ConnectionImpl.java:955)at com.mysql.cj.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:825)... 13 common frames omitted
Caused by: javax.net.ssl.SSLException: Received fatal alert: internal_errorat sun.security.ssl.Alert.createSSLException(Alert.java:133)at sun.security.ssl.Alert.createSSLException(Alert.java:117)at sun.security.ssl.TransportContext.fatal(TransportContext.java:314)at sun.security.ssl.Alert$AlertConsumer.consume(Alert.java:293)at sun.security.ssl.TransportContext.dispatch(TransportContext.java:187)at sun.security.ssl.SSLTransport.decode(SSLTransport.java:154)at sun.security.ssl.SSLSocketImpl.decode(SSLSocketImpl.java:1198)at sun.security.ssl.SSLSocketImpl.readHandshakeRecord(SSLSocketImpl.java:1107)at sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:400)at sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:372)at com.mysql.cj.protocol.ExportControlled.performTlsHandshake(ExportControlled.java:315)at com.mysql.cj.protocol.StandardSocketFactory.performTlsHandshake(StandardSocketFactory.java:188)at com.mysql.cj.protocol.a.NativeSocketConnection.performTlsHandshake(NativeSocketConnection.java:99)at com.mysql.cj.protocol.a.NativeProtocol.negotiateSSLConnection(NativeProtocol.java:352)... 20 common frames omitted

排查

1、确认数据库账号密码是正确的

2、其他Java程序可以正常链接该数据库

3、从以下错误日志看,程序与数据库服务之间的通讯是正常的,不过数据库服务在接收到数据包请求之后并没有响应

The last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server.

4、查看数据库配置链接,发现存在SSL相关配置:useSSL=true

jdbc:mysql://192.168.1.116:3306/xxxDataBase?useSSL=true&useUnicode=true&characterEncoding=UTF-8&serverTimezone=GMT%2B8

5、将useSSL=true改为useSSL=false,程序可以正常链接数据库


原因

具体原因未知,应该与SSL有关


解决

将数据库链接的useSSL=true改为useSSL=false

http://www.lryc.cn/news/575925.html

相关文章:

  • MySQL Limit数量不满足时导致查询变慢
  • 深圳中青宝互动网络股份有限公司游戏运维工程师面试题(笔
  • 使用OpenCV进行3D重建:详细指南
  • OpenCV图像添加水印
  • word中如何保存高清图片,并保存为高质量的pdf文件(图像不失真)
  • 51c~嵌入式~PLC~西门子~合集1
  • GO 语言学习 之 语句块
  • 汉中农业服务——激活田野的希望,共绘乡村振兴图
  • Guava Cache 本地项目缓存
  • 昇腾910(NPU)安装paddlepaddle【自用版】
  • LinuxBridge的作用与发展历程:从基础桥接到云原生网络基石
  • 【Linux指南】压缩、网络传输与系统工具
  • 用 pnpm + TurboRepo,构建多项目高效开发体系
  • 人工智能-基础篇-4-人工智能AI、机器学习ML和深度学习DL之间的关系
  • 几种基于Doherty结构的GAN氮化镓功放设计方法介绍
  • Ehcache、Caffeine、Spring Cache、Redis、J2Cache、Memcached 和 Guava Cache 的主要区别
  • 算法-堆排序
  • 飞算科技依托 JavaAI 核心技术,打造企业级智能开发全场景方案
  • AIOps与人工智能的融合:从智能运维到自适应IT生态的革命
  • 【网络】Linux 内核优化实战 - net.ipv4.tcp_rmem 和 net.core.rmem_default 关系
  • MySQL(1)——count()聚合函数
  • V-by-One V1.4协议介绍
  • QT基础知识3——文件操作:QFile类
  • windows11 源码本地部署大模型anythingllm
  • web布局26
  • sqlite如何存储日期
  • 【数据交易】全国数据交易所的发展现状
  • 开源 java android app 开发(十三)绘图定义控件、摇杆控件的制作
  • OpenLayers 拖动旋转和缩放
  • Python打卡训练营-Day44-预训练模型