当前位置:编程学习 > JAVA >>

总是提示MYSQL数据库无法连接(非八小时自动断开问题)

用JAVA开发的网站,数据库为MYSQL,在本机和自动的服务器上运行均没有问题,但是放在虚拟空间里之后,刚开始好像是八小时自动断开数据库的问题,也没太在意,但这两天总是重启了Tomcat之后,不到五分钟就找不开网站了,提示如下:

type Exception report

message 

description The server encountered an internal error () that prevented it from fulfilling this request.

exception 

javax.servlet.ServletException: could not execute query; nested exception is org.hibernate.exception.JDBCConnectionException: could not execute query
org.apache.struts.chain.ComposableRequestProcessor.process(ComposableRequestProcessor.java:286)
org.apache.struts.action.ActionServlet.process(ActionServlet.java:1913)
org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:449)
javax.servlet.http.HttpServlet.service(HttpServlet.java:690)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
com.crbt123.common.CharacterEncodingFilter.doFilter(CharacterEncodingFilter.java:21)


root cause 

org.springframework.dao.DataAccessResourceFailureException: could not execute query; nested exception is org.hibernate.exception.JDBCConnectionException: could not execute query
org.springframework.orm.hibernate3.SessionFactoryUtils.convertHibernateAccessException(SessionFactoryUtils.java:612)
org.springframework.orm.hibernate3.HibernateAccessor.convertHibernateAccessException(HibernateAccessor.java:412)
org.springframework.orm.hibernate3.HibernateTemplate.doExecute(HibernateTemplate.java:424)
org.springframework.orm.hibernate3.HibernateTemplate.executeWithNativeSession(HibernateTemplate.java:374)
org.springframework.orm.hibernate3.HibernateTemplate.find(HibernateTemplate.java:917)
com.crbt123.dao.hibernate.UserInfoDaoHibernate.i易做图istuserinfo(UserInfoDaoHibernate.java:139)
com.crbt123.service.impl.UserInfoManagerImpl.i易做图istuserinfo(UserInfoManagerImpl.java:52)
com.crbt123.web.action.IndexAction.execute(IndexAction.java:80)
org.springframework.web.struts.DelegatingActionProxy.execute(DelegatingActionProxy.java:110)
org.apache.struts.chain.commands.servlet.ExecuteAction.execute(ExecuteAction.java:58)
org.apache.struts.chain.commands.AbstractExecuteAction.execute(AbstractExecuteAction.java:67)
org.apache.struts.chain.commands.ActionCommandBase.execute(ActionCommandBase.java:51)
org.apache.commons.chain.impl.ChainBase.execute(ChainBase.java:190)
org.apache.commons.chain.generic.LookupCommand.execute(LookupCommand.java:304)
org.apache.commons.chain.impl.ChainBase.execute(ChainBase.java:190)
org.apache.struts.chain.ComposableRequestProcessor.process(ComposableRequestProcessor.java:283)
org.apache.struts.action.ActionServlet.process(ActionServlet.java:1913)
org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:449)
javax.servlet.http.HttpServlet.service(HttpServlet.java:690)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
com.crbt123.common.CharacterEncodingFilter.doFilter(CharacterEncodingFilter.java:21)


root cause 

org.hibernate.exception.JDBCConnectionException: could not execute query
org.hibernate.exception.SQLStateConverter.convert(SQLStateConverter.java:74)
org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:43)
org.hibernate.loader.Loader.doList(Loader.java:2223)
org.hibernate.loader.Loader.listIgnoreQueryCache(Loader.java:2104)
org.hibernate.loader.Loader.list(Loader.java:2099)
org.hibernate.loader.hql.QueryLoader.list(QueryLoader.java:378)
org.hibernate.hql.ast.QueryTranslatorImpl.list(QueryTranslatorImpl.java:338)
org.hibernate.engine.query.HQLQueryPlan.performList(HQLQueryPlan.java:172)
org.hibernate.impl.SessionImpl.list(SessionImpl.java:1121)
org.hibernate.impl.QueryImpl.list(QueryImpl.java:79)
org.springframework.orm.hibernate3.HibernateTemplate$30.doInHibernate(HibernateTemplate.java:926)
org.springframework.orm.hibernate3.HibernateTemplate.doExecute(HibernateTemplate.java:419)
org.springframework.orm.hibernate3.HibernateTemplate.executeWithNativeSession(HibernateTemplate.java:374)
org.springframework.orm.hibernate3.HibernateTemplate.find(HibernateTemplate.java:917)
com.crbt123.dao.hibernate.UserInfoDaoHibernate.i易做图istuserinfo(UserInfoDaoHibernate.java:139)
com.crbt123.service.impl.UserInfoManagerImpl.i易做图istuserinfo(UserInfoManagerImpl.java:52)
com.crbt123.web.action.IndexAction.execute(IndexAction.java:80)
org.springframework.web.struts.DelegatingActionProxy.execute(DelegatingActionProxy.java:110)
org.apache.struts.chain.commands.servlet.ExecuteAction.execute(ExecuteAction.java:58)
org.apache.struts.chain.commands.AbstractExecuteAction.execute(AbstractExecuteAction.java:67)
org.apache.struts.chain.commands.ActionCommandBase.execute(ActionCommandBase.java:51)
org.apache.commons.chain.impl.ChainBase.execute(ChainBase.java:190)
org.apache.commons.chain.generic.LookupCommand.execute(LookupCommand.java:304)
org.apache.commons.chain.impl.ChainBase.execute(ChainBase.java:190)
org.apache.struts.chain.ComposableRequestProcessor.process(ComposableRequestProcessor.java:283)
org.apache.struts.action.ActionServlet.process(ActionServlet.java:1913)
org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:449)
javax.servlet.http.HttpServlet.service(HttpServlet.java:690)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
com.crbt123.common.CharacterEncodingFilter.doFilter(CharacterEncodingFilter.java:21)


root cause 

com.mysql.jdbc.exceptions.MySQLNonTransientConnectionException: No operations allowed after connection closed.Connection was implicitly closed due to underlying exception/error:


** BEGIN NESTED EXCEPTION ** 



请问各位这是什么原因?有什么解决办法没有?谢谢 --------------------编程问答-------------------- 不是写的很明显
org.hibernate.exception.JDBCConnectionException: could not execute query 
jdbc连接内部异常 --------------------编程问答--------------------
引用 1 楼 nangonghaopeng 的回复:
不是写的很明显
org.hibernate.exception.JDBCConnectionException: could not execute query
jdbc连接内部异常


。。。。。。。。。
我也知道是异常了,而且不能查询,关键是解决这个问题的办法,谢谢 --------------------编程问答-------------------- 你检测下每个查询是否有用! --------------------编程问答-------------------- 加大Mysql连接数
http://hi.baidu.com/candy%D0%A1%C6%F0/blog/item/438da772d2d083148701b00a.html --------------------编程问答-------------------- 那你看看你的程序对应的那一行出错了  不执行哪那个数据库操作 
你自己写的代码 别人怎么可能熟悉 --------------------编程问答-------------------- 确定程序是没问题的,传到虚拟主机上之后才出现的问题,现在重启tomcat也不起作用了,只要过个一两分钟,网站就打不开了,是需要配置hibernate.cfg.xml文件吗? --------------------编程问答-------------------- 连接数小吧 
打开的连接没有及时关闭 
在hibernate.cfg.xml中,在url的连接后加上autoReconnect=true
--------------------编程问答--------------------
引用 4 楼 wzj167 的回复:
加大Mysql连接数
http://hi.baidu.com/candy%D0%A1%C6%F0/blog/item/438da772d2d083148701b00a.html


用的是虚拟主机,无法修改MY.ini文件 --------------------编程问答-------------------- hibernate.cfg.xml文件里配置jdbc时能指定连接数大小不? --------------------编程问答-------------------- max_connections=100----最大16384 --------------------编程问答--------------------
引用 10 楼 nangonghaopeng 的回复:
max_connections=100----最大16384


用的是虚拟主机,没办法设置这个吧? --------------------编程问答--------------------
引用 11 楼  的回复:
引用 10 楼 nangonghaopeng 的回复:
max_connections=100----最大16384


用的是虚拟主机,没办法设置这个吧?

最近用虚拟机 也出现了这个问题。  过一会会他自己就好了。  可是完全不知道原因 请问大侠怎么解决的? --------------------编程问答-------------------- 是不是连接数过多了 
补充:Java ,  Web 开发
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,