mysql查询连接数

最近公司的测试服务器数据库经常是连接爆满,几次加大了依旧满了。

明明只有几个人在用这个数据库,但是连接数到了三四百。于是就想是谁一直开着连接不释放,于是写了个SQL查了下连接使用情况。

SQL如下:

select SUBSTRING_INDEX(host,':',1) as ip , count(*) as connections
from information_schema.processlist
group by ip
ORDER BY connections desc;

结果:

很明显啦,除了18是服务器,48和42两个同学就有点过分啦,这下可以拿着证据去怼他们了:)。

从SQL看我们可以发现我们是从 information_schema这个库中的processlist表中查询的结果。

数据库的schema里放了很多关于数据库配置,性能等等的数据,比如用的processlist就存放了连接相关的数据。

 

我对数据库研究很浅,这里给大家推荐一个blog:

http://www.cnblogs.com/zhoujinyi/

原文地址:https://www.cnblogs.com/insaneXs/p/6707117.html