You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Java出现SSLException: closing inbound before receiving peer's close_notify可否安全忽略

关于MySQL Connector/J 5.1.47关闭连接时SSL警告的说明

警告成因

这个SSL异常是Connector/J 5.1.47版本的连接关闭逻辑与Java 8 SSL实现的兼容问题导致的:

  • 驱动在关闭连接的流程中,会先主动调用SSL套接字的shutdownInput()方法关闭输入流
  • 此时MySQL服务端的SSL关闭通知close_notify还未完成传输,Java 8的SSLSocketImpl实现会直接抛出javax.net.ssl.SSLException: closing inbound before receiving peer's close_notify异常
  • 驱动内部已经捕获了该异常,仅打印警告日志,没有向上层业务代码抛出异常,连接关闭的核心逻辑已经执行完成

风险判断

该警告是完全无害的,除占用日志存储空间外无其他副作用:

  1. 你自行验证的数据库端会话已销毁、无资源泄漏的结论是正确的,连接对应的JDBC资源、服务端会话资源都已经正常释放
  2. 官方高版本驱动直接将该警告抑制的处理逻辑,也印证了该异常属于连接关闭流程中的预期内异常,不存在隐性风险
  3. 该异常不会影响业务操作的正确性,也不会引发后续的连接创建、查询等操作的异常

可选优化方案

如果需要消除该日志警告,无需调整业务逻辑、也不需要关闭SSL,可以选择以下方案:

  • 升级驱动到5.1分支的最新小版本,该版本已经修复了该警告打印的问题,且完全兼容MySQL 5.5、5.7版本,不需要修改任何业务代码
  • 调整日志框架的配置,将com.mysql.jdbc.MysqlIO类的日志级别调整为ERROR,过滤掉该类WARN日志

内容的提问来源于stack exchange,提问作者RTF

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.07 05:54:01