查看当前连接数
-- 当前连接数
SHOW STATUS LIKE 'Threads_connected';
-- 历史最大连接数
SHOW STATUS LIKE 'Max_used_connections';
-- 配置最大连接数
SHOW VARIABLES LIKE 'max_connections';连接数计算公式
max_connections 建议设置为 (应用服务器数 * 应用实例数 * 连接池大小) + 20% 冗余。
例如:3 台应用服务器,每台 4 个实例,每个实例连接池 50:
3 * 4 * 50 = 600,冗余 20% 建议设为 720。
连接池参数优化(以 Druid 为例)
# 最大活跃连接数
maxActive=50
# 最小空闲连接
minIdle=5
# 获取连接超时时间(ms)
maxWait=60000
# 连接保持空闲而不被回收的最小时间
minEvictableIdleTimeMillis=300000解决 Too many connections
-- 临时调大
SET GLOBAL max_connections = 1000;
-- 查看并 kill 空闲连接
SHOW PROCESSLIST;
KILL connection_id;合理配置连接池能有效避免数据库资源耗尽。
