评论

收藏

[MySQL] 记录一次奇葩的sleep(15)引起的Too many connections

数据库 数据库 发布于:2021-07-04 10:09 | 阅读数:463 | 评论:0

  上周日,早上快到6点,天还没亮,睡得正香,突然被一声短信惊醒,Too many connections!
DSC0000.jpg

  我这纳闷呢,搞啥活动呢?平常这都是低风期啊。
  

  登陆机器一查看慢日志,发现有这么一条SQL,很奇葩:
DSC0001.jpg

  跑了快1小时了,而且查询的结果还是0行。
  

  很奇怪到底在搞毛?我又查看了这个表,并没有aid=1的记录。
DSC0002.jpg

  周一询问了开发,都不知道这条SQL。最后猜想到,这是不是监控人员,搞的一个每隔15秒就连接一下,看看数据库存活状态?假如是的话,应该用程序做,直接1-sleep(15)很危险,假如我这个表里有100行,那么耗时就是100*15秒,这样会一直占用连接不释放,结果造成连接堆积,正常的连接进不来,导致业务报错。
  

  最后直接pt-kill,结束了这场Too many connections风波。
  

  


  
关注下面的标签,发现更多相似文章