【问题标题】:SSLException: closing inbound before receiving peer's close_notifySSLException:在接收对等方的 close_notify 之前关闭入站
【发布时间】:2019-05-17 02:37:57
【问题描述】:

我正在用 MySQL 编写一个简单的 JDBC 代码。一切正常,我可以通过 select 语句打印表中的记录。但是当我使用 Connection.close() 关闭连接时,我得到了以下异常。任何帮助表示赞赏。

 WARN: Caught while disconnecting...
EXCEPTION STACK TRACE:
** BEGIN NESTED EXCEPTION ** 
javax.net.ssl.SSLException
MESSAGE: closing inbound before receiving peer's close_notify
 STACKTRACE:
 javax.net.ssl.SSLException: closing inbound before receiving peer's close_notify
    at java.base/sun.security.ssl.Alert.createSSLException(Alert.java:129)
    at java.base/sun.security.ssl.Alert.createSSLException(Alert.java:117)
    at java.base/sun.security.ssl.TransportContext.fatal(TransportContext.java:308)
    at java.base/sun.security.ssl.TransportContext.fatal(TransportContext.java:264)
    at java.base/sun.security.ssl.TransportContext.fatal(TransportContext.java:255)
    at java.base/sun.security.ssl.SSLSocketImpl.shutdownInput(SSLSocketImpl.java:645)
    at java.base/sun.security.ssl.SSLSocketImpl.shutdownInput(SSLSocketImpl.java:624)
    at com.mysql.cj.protocol.a.NativeProtocol.quit(NativeProtocol.java:1312)
    at com.mysql.cj.NativeSession.quit(NativeSession.java:182)
    at com.mysql.cj.jdbc.ConnectionImpl.realClose(ConnectionImpl.java:1750)
    at com.mysql.cj.jdbc.ConnectionImpl.close(ConnectionImpl.java:720)
    at com.jdbc.Driver.display(Driver.java:27)
    at com.jdbc.Driver.main(Driver.java:38)

【问题讨论】:

标签: java mysql jdbc


【解决方案1】:

这是 Java 11 上的 MySQL 驱动程序的问题https://bugs.mysql.com/bug.php?id=93590

此问题已在 Connector/J 版本 8.0.16 中得到修复

【讨论】:

    【解决方案2】:

    另一种解决方法是通过将 ?useSSL=false 附加到 JDBC URL 来禁用 SSL

    jdbc:mysql://localhost:port/database_name?useSSL=false
    

    【讨论】:

      猜你喜欢
      • 2019-03-27
      • 2021-10-25
      • 2019-04-07
      • 1970-01-01
      • 2019-09-25
      • 2017-03-12
      • 2015-11-03
      • 1970-01-01
      • 2016-08-28
      相关资源
      最近更新 更多