mysql连接失败:The driver has not received any packets from the server

java spring项目连接mysql报错,可以确认mysql自身没问题,数据库权限及网络连接均正常

Mysql数据库版本:mysql-5.7.30
Mysql客户端:mysql-connector-j-8.0.31.jar
HikariCP-4.0.3.jar

应用日志报错如下:
2024-03-26 14:31:27.706 ERROR [1E11EB80F4FF41DAB61299E0871A7F69] HikariPool throwPoolInitializationException (594): HikariPool-1 - Exception during pool initialization.
com.mysql.cj.jdbc.exceptions.CommunicationsException: Communications link failure

The 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:828)
        at com.mysql.cj.jdbc.ConnectionImpl.<init>(ConnectionImpl.java:448)
        at com.mysql.cj.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:241)
        at com.mysql.cj.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:198)
        ...
        at com.mysql.cj.exceptions.ExceptionFactory.createCommunicationsException(ExceptionFactory.java:167)
        at com.mysql.cj.protocol.a.NativeSocketConnection.connect(NativeSocketConnection.java:89)
        at com.mysql.cj.NativeSession.connect(NativeSession.java:120)
        at com.mysql.cj.jdbc.ConnectionImpl.connectOneTryOnly(ConnectionImpl.java:948)
        at com.mysql.cj.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:818)
        ... 103 common frames omitted
Caused by: java.net.SocketTimeoutException: connect timed out
        at java.net.PlainSocketImpl.socketConnect(Native Method)
        at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:350)
        ...
        at java.net.Socket.connect(Socket.java:589)
        at com.mysql.cj.protocol.StandardSocketFactory.connect(StandardSocketFactory.java:153)
        at com.mysql.cj.protocol.a.NativeSocketConnection.connect(NativeSocketConnection.java:63)
        ... 106 common frames omitted
配置文件:
spring:
  datasource:
    url: mydbm01.sudops.com:3306/sudops?useSSL=false&serverTimezone=UTC
    username: dbuesr
    password: dbpwd

解决方案:

修改mysql连接串,增加 autoReconnect 和 failOverReadOnly
jdbc:mysql://mydbm01.sudops.com:3306/sudops?useSSL=false&serverTimezone=UTC&autoReconnect=true&failOverReadOnly=false 释义: autoReconnect: 当数据库连接异常中断时,是否自动重新连接? failOverReadOnly: 自动重连成功后,连接是否设置为只读? 

u2

Related Posts

担心Todesk,向日葵有漏洞和数据泄露?跟我来体验下完美开源替代工具:RustDesk!

除了使用vpn访问公司内网外,很多公司员工为了操作上的便利,…

Read more

具有自我进化能力的国产大模型:MiniMax M2.7

MiniMax M2.7是MiniMax公司在M2系列模型基…

Read more

You Missed

MiroFish:群体智能预测引擎,让未来在数字沙盘中预演

  • u2
  • 3月 29, 2026
  • 54 views

OpenClaw爆火背后:一个值得深思的转折点

  • u2
  • 3月 25, 2026
  • 67 views

担心Todesk,向日葵有漏洞和数据泄露?跟我来体验下完美开源替代工具:RustDesk!

  • u2
  • 3月 20, 2026
  • 78 views

具有自我进化能力的国产大模型:MiniMax M2.7

  • u2
  • 3月 19, 2026
  • 224 views
具有自我进化能力的国产大模型:MiniMax M2.7

当AI学会读心术:MindPower框架带来的震撼与思考

  • u2
  • 3月 16, 2026
  • 94 views

AI并没有简化软件工程:它只是让糟糕的工程更容易实现了

  • u2
  • 3月 14, 2026
  • 102 views