整理马尼拉服务器数据库连接数耗尽的排查实战。
连接数耗尽可能导致服务不可用。以下是排查实战。
一、现象 - 应用报 too many connections - 新请求被拒绝 - 服务不可用
二、定位 1) 查看当前最大连接数配置 2) 查看当前连接数 3) 找出占用连接的来源 4) 查看哪些连接空闲未释放
三、常见原因 1) 连接未关闭(连接泄漏) 2) 连接池配置过小 3) 慢查询占用连接 4) 应用异常未释放 5) 突发流量
四、解决 - 修复连接泄漏 - 调整连接池大小 - 优化慢查询 - 设置合理超时 - 临时调大最大连接数
五、排查命令 - SHOW PROCESSLIST - SHOW STATUS LIKE 'Threads_connected' - 分析连接来源 IP 和状态
六、预防 1) 连接池监控 2) 慢查询告警 3) 连接超时回收 4) 容量规划
总结:连接耗尽要先看连接来源和状态,再做泄漏修复和池调优。