mysql数据库Too many connections报错排查


现象log日志里频繁出现ERROR: Too many connections这样的报错。分析看到这样的报错我们大概也知道为啥,无非就是连接数满了,亦或代码里有问题导致不合理的关闭连开发云主机域名接。我始终坚持传递思想为首,知识为辅。为啥呢,因为大家都是聪明人,思想有了怎么做那每个人都有每个人的方法,所有人才能最快的进步。
好了,废话有点多,回到正题,为啥上面我会提到思路呢。因为只有你有了这个思路才能干事啊!很多时候我们想干事但没思路啊!所以学习学的是思路,根本不是知识!我们知道了可能产生的原因之后就要去逐个排查,大致步骤如下:1、看连接数。MySQL 配置的最大连接数是 100,然应用这边最多也就 30~40吧,不应该会出现这个问题,所以pass掉2、剩下的就是代码,重点看sql部分,放到建立连接和释放连接的地方进行排查源代码:
pool.getConnection(function(err, connection) {if (err) throw err;connection.query(sql, function(err, rows, fields) {if (err) {return cosole.error(err);}cb(rows);});// 释放此连接connection.release();看出什么问题来了吗?嗯,我猜,看不出来~哈哈其实稍微懂点的代码的童鞋应该可以看出来,就是释放连接语句放的位置有点不对。修改后:pool.getConnection(function(err, connection) {if (err) throw err;connection.query(sql, function(err, rows, fields) {// 释放连接connection.release();if (err) {return cosole.error(err);}cb(rows);3、修改之后验证,万事大吉,阿弥陀佛!

相关推荐: Fitnesse使用系列五

脚本表如果说前面介绍的几种表格都是单步骤、单方法。Script table就是一系列的多步骤操作了,正如名开发云主机域名称所代表的含义。表头的第一个格加script:前缀,也可以只是一个script,后面紧跟的单元格作为类名。后面跟构造参数。下面的行每行代表一…

免责声明:本站发布的图片视频文字,以转载和分享为主,文章观点不代表本站立场,本站不承担相关法律责任;如果涉及侵权请联系邮箱:360163164@qq.com举报,并提供相关证据,经查实将立刻删除涉嫌侵权内容。

(0)
打赏 微信扫一扫 微信扫一扫
上一篇 05/05 16:43
下一篇 05/05 16:43