久久福利_99r_国产日韩在线视频_直接看av的网站_中文欧美日韩_久久一

您的位置:首頁技術文章
文章詳情頁

java報錯Communications link failure 該如何解決?

瀏覽:139日期:2024-01-13 10:57:58

問題描述

就是普通的查詢mysql數據庫的代碼:

錯誤棧如下:

com.mysql.jdbc.exceptions.jdbc4.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 sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57) at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) at java.lang.reflect.Constructor.newInstance(Constructor.java:526) at com.mysql.jdbc.Util.handleNewInstance(Util.java:406) at com.mysql.jdbc.SQLError.createCommunicationsException(SQLError.java:1074) at com.mysql.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:2209) at com.mysql.jdbc.ConnectionImpl.<init>(ConnectionImpl.java:776) at com.mysql.jdbc.JDBC4Connection.<init>(JDBC4Connection.java:46) at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57) at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) at java.lang.reflect.Constructor.newInstance(Constructor.java:526) at com.mysql.jdbc.Util.handleNewInstance(Util.java:406) at com.mysql.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:352) at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:284) at java.sql.DriverManager.getConnection(DriverManager.java:571) at java.sql.DriverManager.getConnection(DriverManager.java:215) at testHttpConnection.util.DBUtil.getConn(DBUtil.java:26) at testHttpConnection.TestMysql.main(TestMysql.java:23)Caused by: com.mysql.jdbc.exceptions.jdbc4.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 sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57) at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) at java.lang.reflect.Constructor.newInstance(Constructor.java:526) at com.mysql.jdbc.Util.handleNewInstance(Util.java:406) at com.mysql.jdbc.SQLError.createCommunicationsException(SQLError.java:1074) at com.mysql.jdbc.MysqlIO.readPacket(MysqlIO.java:675) at com.mysql.jdbc.MysqlIO.doHandshake(MysqlIO.java:1078) at com.mysql.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:2137) ... 13 moreCaused by: java.net.SocketException: Permission denied: recv failed at java.net.SocketInputStream.socketRead0(Native Method) at java.net.SocketInputStream.read(SocketInputStream.java:152) at java.net.SocketInputStream.read(SocketInputStream.java:122) at com.mysql.jdbc.util.ReadAheadInputStream.fill(ReadAheadInputStream.java:113) at com.mysql.jdbc.util.ReadAheadInputStream.readFromUnderlyingStreamIfNecessary(ReadAheadInputStream.java:160) at com.mysql.jdbc.util.ReadAheadInputStream.read(ReadAheadInputStream.java:188) at com.mysql.jdbc.MysqlIO.readFully(MysqlIO.java:2494) at com.mysql.jdbc.MysqlIO.readPacket(MysqlIO.java:599) ... 15 more

問題解答

回答1:

我來分享下我之前出現這個錯誤的解決辦法吧,和1樓不一樣:

eclipse中,設置“Default VM arguments”添加:“-Djava.net.preferIPv4Stack=true”

具體錯誤原因嘛,好像是由于jvm中的配置改變,導致jvm無法通過網絡獲取部分信息

回答2:

這個應該能解決你的問題: Communications link failure的解決辦法

使用Connector/J連接MySQL數據庫,程序運行較長時間后就會報以下錯誤:Communications link failure,The last packet successfully received from the server was millisecond ago.The last packet successfully sent to the server was millisecond ago。

其中錯誤還會提示你修改wait_timeout或是使用Connector/J的autoReconnect屬性避免該錯誤。后來查了一些資料,才發現遇到這個問題的人還真不少,大部分都是使用連接池方式時才會出現這個問題,短連接應該很難出現這個問題。這個問題的原因:MySQL服務器默認的“wait_timeout”是28800秒即8小時,意味著如果一個連接的空閑時間超過8個小時,MySQL將自動斷開該連接,而連接池卻認為該連接還是有效的(因為并未校驗連接的有效性),當應用申請使用該連接時,就會導致上面的報錯。修改MySQL的參數,wait_timeout最大為31536000即1年,在my.cnf中加入:[mysqld]wait_timeout=31536000interactive_timeout=31536000重啟生效,需要同時修改這兩個參數。

標簽: java
相關文章:
主站蜘蛛池模板: 国产一区二区精品在线观看 | 日韩一区二区免费视频 | 欧美日韩国产中文 | 亚洲成人久久久 | 国产午夜精品一区二区三区 | 精品欧美乱码久久久久久 | www日韩欧美 | 亚洲色图一区二区三区 | 91精品国产福利在线观看 | 成人h视频在线观看 | 福利片在线观看 | 欧美一级精品片在线看 | 成人一区二区三区 | 国产一区二区三区在线免费观看 | 久久一区 | av三级 | 最新日韩av| 国产成人一区二区三区 | 99国产精品久久久 | 中文字幕国产区 | 久草色视频在线观看 | 亚洲国产字幕 | 日韩三级av在线 | 羞羞视频网站 | 成年人性视频 | 精品96久久久久久中文字幕无 | 久久精品国产91精品亚洲高清 | 国产亚洲精品久久久久久久久 | 狠狠干狠狠操 | 国产欧美精品一区二区三区四区 | 亚洲精品99 | 精品成人在线 | 午夜免费小视频 | 亚洲一区二区中文字幕在线观看 | 精品人成 | 国产精品综合 | 欧美亚洲国产一区 | 国产精品日韩欧美 | 精品视频一区二区三区 | 国产乱人伦av在线a 天天碰天天操 | 中文字幕精品三级久久久 |