com.mysql.jdbc.CommunicationsException: Communications link failure due to underlying exception:
2010-05-02 21:40
806 查看
系统长时间无操作,再次访问出现如下异常
com.mysql.jdbc.CommunicationsException: Communications link failure due to underlying exception:
** BEGIN NESTED EXCEPTION **
java.net.SocketException
MESSAGE: Software caused connection abort: socket write error
STACKTRACE:
java.net.SocketException: Software caused connection abort: socket write error
at java.net.SocketOutputStream.socketWrite0(Native Method)
at java.net.SocketOutputStream.socketWrite(Unknown Source)
at java.net.SocketOutputStream.write(Unknown Source)
at java.io.BufferedOutputStream.flushBuffer(Unknown Source)
at java.io.BufferedOutputStream.flush(Unknown Source)
at com.mysql.jdbc.MysqlIO.send(MysqlIO.java:2744)
at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1612)
at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:1723)
at com.mysql.jdbc.Connection.execSQL(Connection.java:3250)
at com.mysql.jdbc.Connection.setAutoCommit(Connection.java:5395)
at com.mchange.v2.c3p0.impl.NewProxyConnection.setAutoCommit(NewProxyConnection.java:881)
at org.hibernate.transaction.JDBCTransaction.begin(JDBCTransaction.java:91)
at org.hibernate.impl.SessionImpl.beginTransaction(SessionImpl.java:1353)
at org.hibernate.ejb.TransactionImpl.begin(TransactionImpl.java:38)
原因如下:
mysql配置中的wait_timeout值一定要大于等于连接池种的idel_timeout值。否则mysql会在wait_timeout的时间
后关闭连接,然而连接池还认为该连接可用,这样就会产生SocketException。
所以wait_timeout>=idel_timeout,即可解决问题!
com.mysql.jdbc.CommunicationsException: Communications link failure due to underlying exception:
** BEGIN NESTED EXCEPTION **
java.net.SocketException
MESSAGE: Software caused connection abort: socket write error
STACKTRACE:
java.net.SocketException: Software caused connection abort: socket write error
at java.net.SocketOutputStream.socketWrite0(Native Method)
at java.net.SocketOutputStream.socketWrite(Unknown Source)
at java.net.SocketOutputStream.write(Unknown Source)
at java.io.BufferedOutputStream.flushBuffer(Unknown Source)
at java.io.BufferedOutputStream.flush(Unknown Source)
at com.mysql.jdbc.MysqlIO.send(MysqlIO.java:2744)
at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1612)
at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:1723)
at com.mysql.jdbc.Connection.execSQL(Connection.java:3250)
at com.mysql.jdbc.Connection.setAutoCommit(Connection.java:5395)
at com.mchange.v2.c3p0.impl.NewProxyConnection.setAutoCommit(NewProxyConnection.java:881)
at org.hibernate.transaction.JDBCTransaction.begin(JDBCTransaction.java:91)
at org.hibernate.impl.SessionImpl.beginTransaction(SessionImpl.java:1353)
at org.hibernate.ejb.TransactionImpl.begin(TransactionImpl.java:38)
原因如下:
mysql配置中的wait_timeout值一定要大于等于连接池种的idel_timeout值。否则mysql会在wait_timeout的时间
后关闭连接,然而连接池还认为该连接可用,这样就会产生SocketException。
所以wait_timeout>=idel_timeout,即可解决问题!
相关文章推荐
- 如何解决com.mysql.jdbc.CommunicationsException: Communications link failure due to underlying exception
- 关于com.mysql.jdbc.CommunicationsException: Communications link failure due to underlying exception:
- com.mysql.jdbc.CommunicationsException: Communications link failure due to underlying exception:
- com.mysql.jdbc.CommunicationsException: Communications link failure due to underlying exception:的解决
- com.mysql.jdbc.CommunicationsException: Communications link failure due to underlying exception
- Error: com.mysql.jdbc.CommunicationsException: Communications link failure due to underlying except
- 解决mysql连接异常—-com.mysql.jdbc.CommunicationsException: Communications link failure due to underlying exception
- com.mysql.jdbc.CommunicationsException: Communications link failure due to underlying exception:
- com.mysql.jdbc.CommunicationsException: Communications link failure due to underlying exception:
- Cause: com.mysql.jdbc.CommunicationsException: Communications link failure due to underlying...的解决
- 解决mysql连接异常—-com.mysql.jdbc.CommunicationsException: Communications link failure due to underlying exception
- com.mysql.jdbc.CommunicationsException: Communications link failure due to underlying exception: (转载:http://www.javaeye.com/topic/38506)
- com.mysql.jdbc.CommunicationsException: Communications link failure due to underlying exception:
- Cause: com.mysql.jdbc.CommunicationsException: Communications link failure due to underlying...的解决
- com.mysql.jdbc.CommunicationsException: Communications link failure due to underlying exception:的解决
- com.mysql.jdbc.CommunicationsException: Communications link failure due to underlying exception:
- 驱动注册成功 com.mysql.jdbc.CommunicationsException: Communications link failure due to underlying exception: ** BEGIN NESTED EXCEPTION ** java.net.Conn
- com.mysql.jdbc.CommunicationsException: Communications link failure due to underlying exception:
- 走近SSH之Hibernate--com.mysql.jdbc.CommunicationsException: Communications link failure due to underlyi
- 遭遇com.mysql.jdbc.CommunicationsException: Communications link failure due to underlying