MySQL数据库 ------- Code 0, state 08S01----问题

桃园狂刀 2017-08-12 11:24:16
使用框架:
ssm+druid

日志记录:
ERROR [com.alibaba.druid.pool.DruidDataSource] - create connection error, url: jdbc:mysql://127.0.0.1:3306/test?useUnicode=true&characterEncoding=utf-8, errorCode 0, state 08S01

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

Caused by: java.net.ConnectException: Connection timed out (Connection timed out)

配置文件:

<property name="driverClassName" value="${jdbc.driver}"/>
<!-- 基本属性 url、user、password -->
<property name="url" value="${jdbc.url}"/>
<property name="username" value="${jdbc.username}"/>
<property name="password" value="${jdbc.password}"/>
<!-- 配置初始化大小、最小、最大 -->
<property name="initialSize" value="${jdbc.pool.init}"/>
<property name="minIdle" value="${jdbc.pool.minIdle}"/>
<property name="maxActive" value="${jdbc.pool.maxActive}"/>
<!-- 配置获取连接等待超时的时间 -->
<property name="maxWait" value="60000"/>

<!-- 配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒 -->
<property name="timeBetweenEvictionRunsMillis" value="60000"/>
<!-- 配置一个连接在池中最小生存的时间,单位是毫秒 -->
<property name="minEvictableIdleTimeMillis" value="300000"/>
<property name="validationQuery" value="${jdbc.testSql}"/>
<property name="testWhileIdle" value="true"/>
<property name="testOnBorrow" value="false"/>
<property name="testOnReturn" value="false"/>
<property name="removeAbandoned" value="true" />
<property name="removeAbandonedTimeout" value="180" />
<!-- 关闭abanded连接时输出错误日志 -->
<property name="logAbandoned" value="true" />
<!-- 配置监控统计拦截的filters -->
<property name="filters" value="stat"/>





...全文
19542 3 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
桃园狂刀 2017-08-24
  • 打赏
  • 举报
回复
解决办法:

 <!--<property name="validationQuery" value="${jdbc.testSql}"/>-->
        <!--<property name="testWhileIdle" value="true"/>-->
        <!--<property name="testOnBorrow" value="false"/>-->
        <!--<property name="testOnReturn" value="false"/>-->
        <!--<property name="removeAbandoned" value="true" />-->
        <!--<property name="removeAbandonedTimeout" value="1800" />-->
由于配置文件中加了这句<property name="validationQuery" value="${jdbc.testSql}"/>测试jdbc连接,意思是每隔一段时间检测一下数据库服务状态,一般情况下服务器状态都是稳定的,所以这一段配置可以果断去掉,然后就不会出现上面描述的问题了
桃园狂刀 2017-08-14
  • 打赏
  • 举报
回复
服务器配置没问题! 这个问题是项目启动后 服务都正常 服务器日志总是三分钟会抛一次这个异常 然而并不影响业务
二月十六 2017-08-12
  • 打赏
  • 举报
回复
MySQL 服务是否启动; 服务器地址网络有没有问题; 看看端口状态; 防火墙状态。

5,657

社区成员

发帖
与我相关
我的任务
社区描述
Web开发应用服务器相关讨论专区
社区管理员
  • 应用服务器社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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