0 0

Druid和Mysql部署之后,过一段时间就不可以访问0

系统采用SpringMVC+Mybatis+MySql搭建,部署到测试环境,一段时间之后就无法访问。

druid配置如下

		<bean id="dataSource" class="com.alibaba.druid.pool.DruidDataSource" init-method="init" destroy-method="close"> 
    		<!-- 基本属性 url、user、password -->
    		<property name="url" value="${jdbc.url}" />
    		<property name="username"><value>${jdbc.username}</value></property>
    		<property name="password" value="${jdbc.password}" />
    		
    		<!-- 配置初始化大小、最小、最大 -->
     		<property name="initialSize"><value>10</value></property>
     		<property name="minIdle"><value>10</value></property>
     		<property name="maxActive"><value>50</value></property>
     		
     		<!-- 配置获取连接等待超时的时间 -->
     		<property name="maxWait"><value>60000</value></property>
     		
			<!-- 配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒 -->
     		<property name="timeBetweenEvictionRunsMillis"><value>60000</value></property>
     		
     		<!-- 配置一个连接在池中最小生存的时间,单位是毫秒 -->
     		<property name="minEvictableIdleTimeMillis"><value>300000</value></property>
     		
     		<property name="validationQuery"><value>SELECT 'x'</value></property>
     		<property name="testWhileIdle"><value>true</value></property>
     		<property name="testOnBorrow"><value>false</value></property>
     		<property name="testOnReturn"><value>false</value></property>
     		
			<!-- 打开PSCache,并且指定每个连接上PSCache的大小 -->
     		<property name="poolPreparedStatements"><value>false</value></property>
<!--      		<property name="maxOpenPreparedStatements"><value>20</value></property> -->
			
			<!-- 配置监控统计拦截的filters -->
			<property name="filters"><value>stat</value></property>
		</bean>


错误日志截取

00:00:00.921 [Druid-ConnectionPool-Create] ERROR c.alibaba.druid.pool.DruidDataSource - create connection error
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.GeneratedConstructorAccessor48.newInstance(Unknown Source) ~[na:na]
	at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) ~[na:1.7.0_67]
	at java.lang.reflect.Constructor.newInstance(Constructor.java:526) ~[na:1.7.0_67]
	at com.mysql.jdbc.Util.handleNewInstance(Util.java:411) ~[mysql-connector-java-5.1.17.jar:na]
	at com.mysql.jdbc.SQLError.createCommunicationsException(SQLError.java:1116) ~[mysql-connector-java-5.1.17.jar:na]
	at com.mysql.jdbc.MysqlIO.<init>(MysqlIO.java:344) ~[mysql-connector-java-5.1.17.jar:na]
	at com.mysql.jdbc.ConnectionImpl.coreConnect(ConnectionImpl.java:2333) ~[mysql-connector-java-5.1.17.jar:na]
	at com.mysql.jdbc.ConnectionImpl.connectOneTryOnly(ConnectionImpl.java:2370) ~[mysql-connector-java-5.1.17.jar:na]
	at com.mysql.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:2154) ~[mysql-connector-java-5.1.17.jar:na]
	at com.mysql.jdbc.ConnectionImpl.<init>(ConnectionImpl.java:792) ~[mysql-connector-java-5.1.17.jar:na]
	at com.mysql.jdbc.JDBC4Connection.<init>(JDBC4Connection.java:47) ~[mysql-connector-java-5.1.17.jar:na]
	at sun.reflect.GeneratedConstructorAccessor46.newInstance(Unknown Source) ~[na:na]
	at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) ~[na:1.7.0_67]
	at java.lang.reflect.Constructor.newInstance(Constructor.java:526) ~[na:1.7.0_67]
	at com.mysql.jdbc.Util.handleNewInstance(Util.java:411) ~[mysql-connector-java-5.1.17.jar:na]
	at com.mysql.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:381) ~[mysql-connector-java-5.1.17.jar:na]
	at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:305) ~[mysql-connector-java-5.1.17.jar:na]
	at com.alibaba.druid.filter.FilterChainImpl.connection_connect(FilterChainImpl.java:142) ~[druid-0.2.9.jar:0.2.9]
	at com.alibaba.druid.filter.stat.StatFilter.connection_connect(StatFilter.java:211) ~[druid-0.2.9.jar:0.2.9]
	at com.alibaba.druid.filter.FilterChainImpl.connection_connect(FilterChainImpl.java:136) ~[druid-0.2.9.jar:0.2.9]
	at com.alibaba.druid.pool.DruidAbstractDataSource.createPhysicalConnection(DruidAbstractDataSource.java:1271) ~[druid-0.2.9.jar:0.2.9]
	at com.alibaba.druid.pool.DruidAbstractDataSource.createPhysicalConnection(DruidAbstractDataSource.java:1325) ~[druid-0.2.9.jar:0.2.9]
	at com.alibaba.druid.pool.DruidDataSource$CreateConnectionThread.run(DruidDataSource.java:1215) ~[druid-0.2.9.jar:0.2.9]
Caused by: java.net.ConnectException: Connection refused: connect
	at java.net.TwoStacksPlainSocketImpl.socketConnect(Native Method) ~[na:1.7.0_67]
	at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:339) ~[na:1.7.0_67]
	at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:200) ~[na:1.7.0_67]
	at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:182) ~[na:1.7.0_67]
	at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:172) ~[na:1.7.0_67]
	at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392) ~[na:1.7.0_67]
	at java.net.Socket.connect(Socket.java:579) ~[na:1.7.0_67]
	at java.net.Socket.connect(Socket.java:528) ~[na:1.7.0_67]
	at java.net.Socket.<init>(Socket.java:425) ~[na:1.7.0_67]
	at java.net.Socket.<init>(Socket.java:241) ~[na:1.7.0_67]
	at com.mysql.jdbc.StandardSocketFactory.connect(StandardSocketFactory.java:257) ~[mysql-connector-java-5.1.17.jar:na]
	at com.mysql.jdbc.MysqlIO.<init>(MysqlIO.java:294) ~[mysql-connector-java-5.1.17.jar:na]
	... 17 common frames omitted


druid采用版本0.2.9
mysql版本 5.5

搜索网上问题结果

1、修改数据库连接url
jdbc.url=jdbc:mysql://localhost:3306/DBNAME?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&autoReconnect=true&failOverReadOnly=false

无效

2、druid连接检测
配置一开始就添加了,没有生效

3、数据库执行命令
show  global  variables like  'wait_timeout';

结果为
wait_timeout	28800


4、数据库服务器暂无法修改配置文件

以上,请各位指点一下!

2014年9月10日 16:34

3个答案 按时间排序 按投票排序

0 0

最后发现是jdbc.url出现错误导致。
jdbc.url = jdbc:mysql://localhost:3306/tao?useUnicode=true&characterEncoding=utf-8
最后修改ip地址项目正常运行。

2017年8月31日 09:05
0 0

请问你这个问题解决了吗?我也一直提示这个,使用了很多方式都不行。您那边有好的解决方式吗?

2016年7月17日 12:44
0 0

请问您这个问题解决了吗?怎么解决的?我也遇到了同样的问题,求指导

2016年2月24日 16:01

相关推荐

Global site tag (gtag.js) - Google Analytics