mysql查询连接数

2026/5/27 databasemysql

数据库中连接数过多排查步骤

# 查询最大连接数


-- 数据库最大连接数
SHOW VARIABLES LIKE 'max_connections';

SHOW FULL PROCESSLIST;
1
2
3
4
5

# 按用户查看连接数


-- 按用户查看连接数
SELECT 
    USER,
    COUNT(*) AS conn_count
FROM information_schema.PROCESSLIST
GROUP BY USER
ORDER BY conn_count DESC;

1
2
3
4
5
6
7
8
9

# 按 IP / 实例查看

-- 按 IP / 实例看
SELECT 
    SUBSTRING_INDEX(HOST, ':', 1) AS ip,
    COUNT(*) AS conn_count
FROM information_schema.PROCESSLIST
GROUP BY ip
ORDER BY conn_count DESC;
1
2
3
4
5
6
7

# 按超时时间排序

-- 查询超时连接
SELECT 
    ID,
    USER,
    HOST,
    DB,
    COMMAND,
    TIME
FROM information_schema.PROCESSLIST
WHERE COMMAND = 'Sleep'
  -- AND TIME > 300
  --  and HOST like '10.248.50.54%'
ORDER BY TIME DESC;
1
2
3
4
5
6
7
8
9
10
11
12
13

# 关闭连接

 KILL <connection_id>;
1
更新时间: 1 分钟前