MySQL 数据库连接数查询、配置

MySQL 数据库的连接数是指同时与 MySQL 数据库建立的客户端连接数量。连接数与 MySQL 的性能密切相关,需要根据实际需求和服务器资源进行合理配置和优化。

1. 查看连接数

1.1. 查看当前会话连接数

SHOW STATUS LIKE 'Threads_connected';

1.2. 查看历史最大连接数

SHOW STATUS LIKE 'Threads_connected';

1.3. 查看连接限制

SHOW STATUS LIKE 'Threads_connected';

2. 调整最大连接数

可以根据服务器负载和应用需求,适当调整最大连接数。

2.1. 临时调整(重启 MySQL 后失效)

  1. SET GLOBAL max_connections = 200;

2.2. 永久调整

编辑 MySQL 配置文件(通常是 my.cnf 或 my.ini),添加或修改以下内容:

mysqld

max_connections = 200

然后重启 MySQL 服务:

systemctl restart mysql

3. 连接数耗尽时的处理

当连接数达到 max_connections 时,新连接将被拒绝,并抛出错误:ERROR 1040 (HY000): Too many connections

解决方法:

  1. 增加 max_connections。
  2. 优化应用程序连接逻辑,减少不必要的长时间连接。
  3. 配置连接池(如 HikariCP、Druid),复用数据库连接。

4. 优化连接数的建议

4.1. 使用连接池

减少创建和关闭连接的开销,提升性能。

4.2. 监控空闲连接

检查长时间未使用的空闲连接:SHOW PROCESSLIST;

配置超时设置会话超时:SET GLOBAL wait_timeout = 300; -- 单位为秒

避免频繁连接与断开尽量保持持久连接,但需要合理控制连接的生命周期。

通过合理调整最大连接数和优化连接管理,可以有效提高 MySQL 数据库的稳定性和性能。

相关推荐
东方佑12 分钟前
去魅:工具调用、Agent 调用、A2A、MCP、Harness 到底都是什么
服务器·网络·数据库
瑞克-桑切斯41 分钟前
2、 MySQL 主从复制与读写分离
数据库·mysql
收纳过往1 小时前
数据库加索引的时机:慢查询日志说话
android·开发语言·数据库·python·低代码·rxjava
咖啡八杯1 小时前
Redis 工具封装:RedisCache 对 Operations 体系的二次封装
java·数据库·redis·缓存·框架·springboot·若依
PaperData1 小时前
2000-2025年地级市科技支行设立数据
数据库·科技
实泽有之,无泽虚之1 小时前
ORA-12514:TNS:监听程序当前无法识别连接描述符中请求的服务问题原因及解决办法
数据库·oracle
牧瀬クリスだ1 小时前
Redis Hash实战:高效存储对象与购物车
java·数据库·redis·算法·哈希算法
A小码哥2 小时前
【外】水星3号实测 1068 token 每秒靠谱吗
数据库
秋饼2 小时前
MySQL 分库分表完全指南:ShardingSphere-JDBC 实战、分片键选型、场景边界、20 个生产坑与 30 道面试点
java·mysql·面试·shardingsphere·分库分表·后端架构
qq_452396232 小时前
第六篇:《SQL 优化的艺术:从慢查询到毫秒级响应》
数据库·sql