JAVA MYSQL不定时出现的问题

younerest 2011-06-25 04:45:06
最近公司弄个SGIP的直连系统,思路是这样的,主机定时查找数据库查看是否有新提交的信息,有的话发送给网关。现在我这边查找数据库时出现了这么个问题:时不时地跳出下面这些错误代码,数据库是每隔一分钟查询一次。有时候系统开个一整天的都好好的,有时候刚启动不久就会有这问题,不定时地出现,也不知道错误的原因是什么,搞的现在头都大了,请各位大虾帮忙看下。使用JAVA+MYSQL

com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure

Last packet sent to the server was 0 ms ago.
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
at java.lang.reflect.Constructor.newInstance(Unknown Source)
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:2120)
at com.mysql.jdbc.ConnectionImpl.<init>(ConnectionImpl.java:723)
at com.mysql.jdbc.JDBC4Connection.<init>(JDBC4Connection.java:46)
at sun.reflect.GeneratedConstructorAccessor6.newInstance(Unknown Source)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
at java.lang.reflect.Constructor.newInstance(Unknown Source)
at com.mysql.jdbc.Util.handleNewInstance(Util.java:406)
at com.mysql.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:302)
at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:282)
at java.sql.DriverManager.getConnection(Unknown Source)
at java.sql.DriverManager.getConnection(Unknown Source)
at Sgip.Sgip.SearchDatebase(Sgip.java:45) \\\\\\\\\定时查找数据库的函数
at Sgip.SgipM$StartThread.run(SgipM.java:221)\\查找数据库的线程
Caused by: com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure

Last packet sent to the server was 0 ms ago.
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
at java.lang.reflect.Constructor.newInstance(Unknown Source)
at com.mysql.jdbc.Util.handleNewInstance(Util.java:406)
at com.mysql.jdbc.SQLError.createCommunicationsException(SQLError.java:1074)
at com.mysql.jdbc.MysqlIO.<init>(MysqlIO.java:335)
at com.mysql.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:2043)
... 12 more
Caused by: java.net.ConnectException: Connection refused: connect
at java.net.PlainSocketImpl.socketConnect(Native Method)
at java.net.PlainSocketImpl.doConnect(Unknown Source)
at java.net.PlainSocketImpl.connectToAddress(Unknown Source)
at java.net.PlainSocketImpl.connect(Unknown Source)
at java.net.SocksSocketImpl.connect(Unknown Source)
at java.net.Socket.connect(Unknown Source)
at java.net.Socket.connect(Unknown Source)
at java.net.Socket.<init>(Unknown Source)
at java.net.Socket.<init>(Unknown Source)
at com.mysql.jdbc.StandardSocketFactory.connect(StandardSocketFactory.java:253)
at com.mysql.jdbc.MysqlIO.<init>(MysqlIO.java:284)
... 13 more
...全文
68 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
金兄 2011-06-26
  • 打赏
  • 举报
回复
根据异常提示,应该是你那里与数据库连接这段网络不稳定
你试一下在查询之前先检查一下连接状态,如果未连接上重连一下
younerest 2011-06-26
  • 打赏
  • 举报
回复
数据库和系统在同一主机上的也需要PING?
牙痴 2011-06-25
  • 打赏
  • 举报
回复
先ping一下 有结果后在查询
ddyouyue 2011-06-25
  • 打赏
  • 举报
回复
ping 下网关看下丢包情况
younerest 2011-06-25
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 fly_m 的回复:]
数据库连接失败,网络有时候断掉了。
断掉了就会出现这个问题
[/Quote]
这种情况有没有什么解决的办法?
Fly_m 2011-06-25
  • 打赏
  • 举报
回复
数据库连接失败,网络有时候断掉了。
断掉了就会出现这个问题

62,615

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧