MySQL下的CommunicationsException问题

栏目: 数据库 · 发布时间: 6年前

内容简介:这周的一天早上一个定时任务突然报错,错误如下字面上看是数据库链接出了问题。最近才把应用的数据库链接池从tomcat切换到druid,所以第一个怀疑的就是druid。

这周的一天早上一个定时任务突然报错,错误如下

### Error querying database. Cause: com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure The last packet successfully received from the server was 67,409 milliseconds ago. The last packet sent successfully to the server was 60,060 milliseconds ago. ### The error may exist in file [xxxxx.xml] ### The error may involve defaultParameterMap ### The error occurred while setting parameters

字面上看是数据库链接出了问题。

最近才把应用的数据库链接池从tomcat切换到druid,所以第一个怀疑的就是druid。

网上搜索搜索一下,发现大部分答案都基本是在连接取出之前需要进行测试,连接池一般支持这样的配置。稍微检查了一下,发现项目中已经配置了相关的配置,所以理论上不是这个问题导致的。

然后仔细研究了一下这个问题,发现这个问题其实蛮常见的,错误信息是一样的,但是具体对应的情况却是各不相同的。比如上文提到的是由于连接超时连接池再取出连接前没有进行测试,这只是一种情况,还有一种比较常见的情况是连接已经建立,但是由于慢查询或者服务器压力过大,导致长时间没有数据返回,占用数据库连接,进而达到数据库最大允许的连接数。

根据这个思路检查了一下数据库平台,从监控中可以看到有一个慢查询持续了60余秒,优化掉这个慢查询就解决了这个问题。

当然还有一些其他比较基本的情况,比如数据库地址错误,导致直接无法连接,或者是数据库配置有误,导致无法接受连接,不过这种问题一般出现在初次连接的时候,一般不会发生,在稳定运行的线上环境。


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

JavaScript DOM编程艺术 (第2版)

JavaScript DOM编程艺术 (第2版)

[英] Jeremy Keith、[加] Jeffrey Sambells / 杨涛、王建桥、杨晓云 等 / 人民邮电出版社 / 2011-4 / 49.00元

JavaScript是Web开发中最重要的一门语言,它强大而优美。无论是桌面开发,还是移动应用。JavaScript都是必须掌握的技术。W3C的DOM标准是开发Web应用的基石。已经得到所有现代浏览器的支持,这使得跨平台Web开发成了一件轻松惬意的事。 本书是超级畅销书的升级版,由倡导Web标准的领军人物执笔,揭示了前端开发的真谛,是学习JavaScript和DOM开发的必读之作。 本......一起来看看 《JavaScript DOM编程艺术 (第2版)》 这本书的介绍吧!

MD5 加密
MD5 加密

MD5 加密工具

UNIX 时间戳转换
UNIX 时间戳转换

UNIX 时间戳转换

HSV CMYK 转换工具
HSV CMYK 转换工具

HSV CMYK互换工具