hibernate+c3p 连接mysql,linux 过一段时间服务器就宕机。无法做任何操纵。
我的连接池配置文件:
<property name="dialect">org.hibernate.dialect.MySQLDialect</property>
<property name="connection.url">jdbc:mysql://127.0.0.1:3306?  useUnicode=true&amp;characterEncoding=gbk</property>
<property name="connection.username">mysql</property>
<property name="connection.password">mingtianzaishuo</property>
<property name="connection.driver_class">com.mysql.jdbc.Driver</property>
<property name="myeclipse.connection.profile">chen</property>
<property name="show_sql">true</property>
<property name="connection.release_mode">auto</property>
<property name="connection.autocommit">true</property> <!--c39 0911 -->
<!-- -->
<property name="connection.provider_class">org.hibernate.connection.C3P0ConnectionProvider</property>
<property name="c3p0.acquire_increment">2</property>
<property name="c3p0.max_size">60</property>
<property name="c3p0.max_statements">100</property>
<property name="c3p0.min_size">1</property>
<property name="c3p0.timeout">120</property>
tomcat运行一段时间,服务器就死,reboot后可以使用。我tomcat日志,localhost日志如下:
信息: SessionListener: contextInitialized()
2012-5-13 8:46:13 org.apache.catalina.core.StandardWrapperValve invoke
严重: Servlet.service() for servlet action threw exception
java.io.EOFException: Can not read response from server. Expected to read 4 bytes, read 0 bytes before connection was unexpectedly lost.
        at com.mysql.jdbc.MysqlIO.readFully(MysqlIO.java:2503)
        at com.mysql.jdbc.MysqlIO.reuseAndReadPacket(MysqlIO.java:2953)
        at com.mysql.jdbc.MysqlIO.reuseAndReadPacket(MysqlIO.java:2942)
        at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3485)
        at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1960)
        at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2114)
        at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2696)
        at com.mysql.jdbc.PreparedStatement.executeInternal(PreparedStatement.java:2105)
        at com.mysql.jdbc.PreparedStatement.executeQuery(PreparedStatement.java:2264)
        at com.mchange.v2.c3p0.impl.NewProxyPreparedStatement.executeQuery(NewProxyPreparedStatement.java:76)
        at org.hibernate.jdbc.AbstractBatcher.getResultSet(AbstractBatcher.java:187)
        at org.hibernate.loader.Loader.getResultSet(Loader.java:1791)
        at org.hibernate.loader.Loader.doQuery(Loader.java:674)
        at org.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Loader.java:236)
        at org.hibernate.loader.Loader.doList(Loader.java:2217)
        at org.hibernate.loader.Loader.listIgnoreQueryCache(Loader.java:2108)
        at org.hibernate.loader.Loader.list(Loader.java:2103)
        at org.hibernate.loader.hql.QueryLoader.list(QueryLoader.java:378)
        at org.hibernate.hql.ast.QueryTranslatorImpl.list(QueryTranslatorImpl.java:340)
        at org.hibernate.engine.query.HQLQueryPlan.performList(HQLQueryPlan.java:172)
        at org.hibernate.impl.SessionImpl.list(SessionImpl.java:1122)
        at org.hibernate.impl.QueryImpl.list(QueryImpl.java:79)
        at com.hncatv.kongzhi.orm.dao.PowerUserRoleDAO.findByProperty(PowerUserRoleDAO.java:93)
        at com.hncatv.kongzhi.orm.dao.PowerUserRoleDAO.findByUserID(PowerUserRoleDAO.java:101)
        at com.hncatv.yang.web.struts.action.MaterialapplyAction.listtask(MaterialapplyAction.java:82)
        at sun.reflect.GeneratedMethodAccessor426.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at org.apache.struts.actions.DispatchAction.dispatchMethod(DispatchAction.java:274)
        at org.apache.struts.actions.DispatchAction.execute(DispatchAction.java:194)
        at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:419)
        at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:224)
        at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1194)
        at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:414)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at com.hncatv.kongzhi.web.struts.tools.CharacterEncodingFilter.doFilter(CharacterEncodingFilter.java:42)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
        at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
        at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
        at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
        at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
        at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298)
        at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:857)
        at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:588)
        at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
        at java.lang.Thread.run(Thread.java:619)
2012-5-13 8:46:14 org.apache.catalina.core.StandardWrapperValve invoke
下面是catalina 的日志:
2012-5-13 8:46:15 org.apache.catalina.connector.Connector pause
严重: Protocol handler pause failed
java.net.SocketException: Network is unreachable
        at java.net.PlainSocketImpl.socketConnect(Native Method)
        at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:333)
        at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:195)
        at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:182)
        at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:366)
        at java.net.Socket.connect(Socket.java:529)
        at java.net.Socket.connect(Socket.java:478)
        at java.net.Socket.<init>(Socket.java:375)
        at java.net.Socket.<init>(Socket.java:218)
        at org.apache.jk.common.ChannelSocket.unLockSocket(ChannelSocket.java:492)
        at org.apache.jk.common.ChannelSocket.pause(ChannelSocket.java:289)
        at org.apache.jk.server.JkMain.pause(JkMain.java:725)
        at org.apache.jk.server.JkCoyoteHandler.pause(JkCoyoteHandler.java:153)
        at org.apache.catalina.connector.Connector.pause(Connector.java:1029)
        at org.apache.catalina.core.StandardService.stop(StandardService.java:566)
        at org.apache.catalina.core.StandardServer.stop(StandardServer.java:744)
        at org.apache.catalina.startup.Catalina.stop(Catalina.java:648)
        at org.apache.catalina.startup.Catalina$CatalinaShutdownHook.run(Catalina.java:692)
2012-5-13 8:46:16 org.apache.catalina.core.StandardService stop
信息: Stopping service Catalina
2012-5-13 8:46:19 org.apache.catalina.loader.WebappClassLoader clearReferencesJdbc
严重: The web application [/pingyi] registered the JBDC driver [com.mysql.jdbc.Driver] but failed to unregister it when the web appl
ication was stopped. To prevent a memory leak, the JDBC Driver has been forcibly unregistered.
2012-5-13 8:46:19 org.apache.catalina.loader.WebappClassLoader clearReferencesJdbc
这个问题困扰我半个多月了。愁人啊,高手帮忙啊。多谢多谢