MySql连接异常解决

这两天遇到一个mysql连接的问题,找人弄了好几天也没弄好,先看一下报错信息:

====================================================================

org.springframework.transaction.CannotCreateTransactionException: Could not open Hibernate Session for transaction; nested exception is org.hibernate.exception.JDBCConnectionException: Cannot open connection        

at org.springframework.orm.hibernate3.HibernateTransactionManager.doBegin(HibernateTransactionManager.java:596)        

at org.springframework.transaction.support.AbstractPlatformTransactionManager.getTransaction(AbstractPlatformTransactionManager.java:371)        

at org.springframework.transaction.interceptor.TransactionAspectSupport.createTransactionIfNecessary(TransactionAspectSupport.java:334)        

at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:105)        

at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)        

at org.springframework.aop.framework.Cglib2AopProxy$DynamicAdvisedInterceptor.intercept(Cglib2AopProxy.java:622)        

at hitec.dms.element.service.biz.impl.DmsMonitorThreadServiceImpl$$EnhancerByCGLIB$$a293fc8f.findList(<generated>)        

at hitec.influence.platform.quartz.ThreadListener.monitorThread(ThreadListener.java:117)        

at hitec.influence.platform.quartz.job.GatherJob.process(GatherJob.java:12)        

at hitec.influence.platform.quartz.QuartzDispatcher$QuartzJob.execute(QuartzDispatcher.java:377)        

at org.quartz.core.JobRunShell.run(JobRunShell.java:202)        

at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:525) Caused by: org.hibernate.exception.JDBCConnectionException: Cannot open connection        

at org.hibernate.exception.SQLStateConverter.convert(SQLStateConverter.java:97)        

at org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:66)        

at org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:52)        

at org.hibernate.jdbc.ConnectionManager.openConnection(ConnectionManager.java:449)        

at org.hibernate.jdbc.ConnectionManager.getConnection(ConnectionManager.java:167)        

at org.hibernate.jdbc.JDBCContext.connection(JDBCContext.java:142)        

at org.hibernate.transaction.JDBCTransaction.begin(JDBCTransaction.java:85)        

at org.hibernate.impl.SessionImpl.beginTransaction(SessionImpl.java:1354)        

at org.springframework.orm.hibernate3.HibernateTransactionManager.doBegin(HibernateTransactionManager.java:555)        

... 11 more Caused by: com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure

The last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server.        

at sun.reflect.GeneratedConstructorAccessor248.newInstance(Unknown Source)        

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:411)        

at com.mysql.jdbc.SQLError.createCommunicationsException(SQLError.java:1117)        

at com.mysql.jdbc.MysqlIO.<init>(MysqlIO.java:350)        

at com.mysql.jdbc.ConnectionImpl.coreConnect(ConnectionImpl.java:2393)        

at com.mysql.jdbc.ConnectionImpl.connectOneTryOnly(ConnectionImpl.java:2430)        

at com.mysql.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:2215)        

at com.mysql.jdbc.ConnectionImpl.<init>(ConnectionImpl.java:813)        

at com.mysql.jdbc.JDBC4Connection.<init>(JDBC4Connection.java:47)        

at sun.reflect.GeneratedConstructorAccessor43.newInstance(Unknown Source)        

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:411)        

at com.mysql.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:399)        

at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:334)        

at org.apache.commons.dbcp.DriverConnectionFactory.createConnection(DriverConnectionFactory.java:38)        

at org.apache.commons.dbcp.PoolableConnectionFactory.makeObject(PoolableConnectionFactory.java:582)        

at org.apache.commons.pool.impl.GenericObjectPool.borrowObject(GenericObjectPool.java:1148)        

at org.apache.commons.dbcp.PoolingDataSource.getConnection(PoolingDataSource.java:106)        

at org.apache.commons.dbcp.BasicDataSource.getConnection(BasicDataSource.java:1044)        

at org.springframework.orm.hibernate3.LocalDataSourceConnectionProvider.getConnection(LocalDataSourceConnectionProvider.java:81)        

at org.hibernate.jdbc.ConnectionManager.openConnection(ConnectionManager.java:446)        

... 16 more Caused by: java.net.SocketException: 打开的文件过多        

at java.net.Socket.createImpl(Socket.java:447)        

at java.net.Socket.<init>(Socket.java:421)        

at java.net.Socket.<init>(Socket.java:241)        

at com.mysql.jdbc.StandardSocketFactory.connect(StandardSocketFactory.java:257)        

at com.mysql.jdbc.MysqlIO.<init>(MysqlIO.java:300)        

... 34 more

====================================================================

看到这些报错信息,一直以为是代码里的hibernate建立连接后一直没有断开,直到连接空闲8小时后mysql给断开不让连接,后来一同事以前遇到过这样的问题,其实一直没有注意到下方的一个异常“more Caused by: java.net.SocketException: 打开的文件过多”,因为我的程序是部署在linux上,因为linux有一个ulimit最大打开文件个数,默认是1024(ulimit -a即可查看相关信息),后来查到是别人封装好的jar包里有一个InputStream只有新建打开没有关闭,一直在循环新建打开文件,直到打开超过1024报错,把inputstream加上关闭就OK啦!

 

转载于:https://www.cnblogs.com/zunpeng/p/5391644.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/261552.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

js映射 nginx_浅析nginx刚刚发布的JavaScript能力nginScript

背景2015年9月&#xff0c;nginx宣布支持类JavaScript语言。这意味着开发者可以更轻松、自由的控制全球最优秀的HTTP及反向代理服务器&#xff0c;并在此之上可以衍生出更多有用、好玩的创意。Nginx也更开发的走向了动态配置化的下一个阶段。大家可以点击查看 官方介绍链接 。先…

浏览器是如何工作的系列:渲染引擎

渲染引擎的功能就是渲染&#xff0c;在浏览器上显示请求的内容。 默认情况下&#xff0c;渲染引擎可以显示HTML和XML文档和图像。他也可以显示其他类型的插件(浏览器扩展)。例如显示PDF使用PDF浏览器插件。 我们将用一个特殊的章节来讨论插件和扩展。在这个章节中&#xff0c;我…

洛杉矶手机资费9.9美元包打一年

“洛杉矶的油价比中国还便宜两块钱。我就想了&#xff0c;中石油、中石化这是怎么回事啊&#xff1f;能不能换我当老总&#xff0c;试半年&#xff0c;不行我再还给你&#xff1f;” 政府工作报告语言更平实 昨日&#xff0c;政协分组讨论政府工作报告&#xff0c;小崔第二个发…

软考信息系统监理师第五次作业

一、组织协调1、组织协调的基本原则是什么&#xff08;记&#xff09;&#xff1f;&#xff08;1&#xff09;公平、公正、独立原则&#xff08;2&#xff09;守法原则&#xff08;3&#xff09;诚信原则&#xff08;4&#xff09;科学原则2、什么是科学的原则&#xff1f;科学…

杨氏矩阵问题

杨氏矩阵问题 问题描述&#xff1a; 杨氏矩阵定义&#xff1a;同行元素从左向右依次递增&#xff0c;同列元素从上到下依次递增&#xff0c;注意&#xff1a;杨氏矩阵行列数可以不相等 杨氏矩阵举例&#xff1a; 123456789 在杨氏矩阵中查找一个元素key,要求时间复杂度小于O(…

win10水印烦死了_win10系统下word去水印的方法【图文】

很多win10系统用户都会从网上下载word文档来进行修改&#xff0c;而在下载的word文档中有时候会有水印&#xff0c;而有些用户并不知道要怎么去除word中水印&#xff0c;为此win7之家小编这就给大家带来win10系统下word去水印的方法吧。方法一、1、进入「设计」-「页面背景」-「…

python中如何对dict对象进行排序

有程序&#xff1a;mydict {carl:40,alan:2,bob:1,danny:3}for key in sorted(mydict.iterkeys()):print "%s: %s" % (key, mydict[key])输出结果为&#xff1a; alan: 2 bob: 1 carl: 40 danny: 3 使用key来进行dict的排序&#xff1a; keylist mydict.keys() key…

富丽的SUSE Linux 10.3(1)

作者: hr127 出自: http://www.linuxdiyf.com版权声明&#xff1a; 原创作品&#xff0c;容许转载&#xff0c;转载时请务必以超链接编制标明文章 原始出处 、作者信息和本声明。不然将追究执法责任。 转载于:https://www.cnblogs.com/zgqjymx/archive/2011/03/07/1976023.htm…

ios CGRec用法

/*rect(x,y,width,height);width&#xff0c; height正负代表了从原点的绘制方向,矩形的长宽都是取得绝对值*/// Do any additional setup after loading the view, typically from a nib.#pragma mark -------------------------------------------生成CGRect----------------…

怎么判断子元素距离父元素顶部位置_js获取元素的距离父元素、窗口的距离offsetTop,offsetHeight,clientHeight...

前言相信很多项目中都会有这样一个小需求(PC端&#xff0c;移动端则是点击)&#xff0c;鼠标移上某个菜单或者某个位置&#xff0c;显示一个弹出框&#xff0c;移开则隐藏弹出框&#xff0c;就是css中hover效果&#xff0c;这种通常做法是每个子菜单下都有一个弹框&#xff0c;…

matlab实现同态滤波

定义 一幅图像可看成由两部分组成&#xff0c;即 fi代表随空间位置不同的亮度&#xff08;Illumination&#xff09;分量&#xff0c;其特点是缓慢变化&#xff0c;集中在图像的低频部分。fr代表景物反射到人眼的反射&#xff08;Reflectance&#xff09;分量&#xff0c;其特…

WordPress Mail Subscribe List插件‘sml_name’参数HTML注入漏洞

漏洞名称&#xff1a;WordPress Mail Subscribe List插件‘sml_name’参数HTML注入漏洞CNNVD编号&#xff1a;CNNVD-201306-205发布时间&#xff1a;2013-06-14更新时间&#xff1a;2013-06-14危害等级&#xff1a; 漏洞类型&#xff1a;输入验证威胁类型&#xff1a;远程CVE编…

大摩维持浩大游戏“增持”评级

网易科技讯 3月3日动静&#xff0c;摩根士丹利往日宣布投资陈诉&#xff0c;指出浩大游戏第四季度业绩凌驾预期&#xff0c;具有多个利好要素&#xff0c;另外该公司在Mochi Media平台方面的极力也值得垂青。因此&#xff0c;摩根士丹利维持浩大游戏“增持”的评级。以下为陈诉…

数字图像处理频域滤波实现低通与高通滤波(包含matlab代码)

低通滤波器 理想低通滤波 作用&#xff1a;保留频谱图中圆内低频分量&#xff0c;截断频谱图中圆外高频分量函数表示&#xff1a; 假设频谱中心在 (M/2,N/2)处&#xff0c;则任意频谱成分(u,v) 到中心&#xff08;原点&#xff09;的距离D(u,v) 定义为&#xff1a; D0为低通滤…

api报错 javaee maven_JavaEE关于Maven的配置与学习

关于Maven的配置与学习1. 简介官方说法&#xff1a;Apache Maven is a software project management and comprehension tool. Based on the concept of a project object model (POM), Maven can manage a projects build, reporting and documentation from a central piece …

jQuery以Post方式发送请求并获取返回的文件供下载!

用ajax请求文件下载当然是可以的&#xff0c;不用有返回值&#xff0c;代码差不多是这样&#xff1a; try{string FileName ".//doc//[大家网]Beginning.ASP.NET.2.0.E-Commerce.in.C#.2005.From.Novice.to.Professional[www.TopSage.com].pdf";FileName ".//…

Direct3D的一些小贴士收藏(转载)

GPU性能调试&#xff1a; 通常来说&#xff0c;使用CPU时间事件来调试GPU是低效并且是不准确的。D3D API在多数命令下会阻塞&#xff0c;甚至是Draw函数。它会在一些时间片上做一些真正的工作&#xff0c;而这往往是不可预知的。因此&#xff0c;GPU的性能调试只能用PIX或者是其…

数字图像处理同态滤波(matlab)

定义 一幅图像可看成由两部分组成&#xff0c;即 fi代表随空间位置不同的亮度&#xff08;Illumination&#xff09;分量&#xff0c;其特点是缓慢变化&#xff0c;集中在图像的低频部分。fr代表景物反射到人眼的反射&#xff08;Reflectance&#xff09;分量&#xff0c;其特…

Java并发编程-ReentrantLock源码分析

一、前言 在分析了 AbstractQueuedSynchronier 源码后&#xff0c;接着分析ReentrantLock源码&#xff0c;其实在 AbstractQueuedSynchronizer 的分析中&#xff0c;已经提到过ReentrantLock&#xff0c;ReentrantLock表示下面具体分析ReentrantLock源码。 二、ReentrantLock数…

谷歌浏览器好用的复制粘贴插件_copybetter增强复制 很好用的chrome复制粘贴插件 解除页面复制限制...

使用说明&#xff1a;增强复制(copybetter) 简介增强复制(copybetter)是一款国人开发的chrome浏览器复制增强扩展插件&#xff0c;作者参考了Copy Fixer和Autocopy两个扩展插件开发而成的。这里是他的个人网站&#xff1a;kodango.com。插件集成了关于复制粘贴功能的几个非常常…