Mysql Too many connections解决方案
发表于:2024-11-29 作者:千家信息网编辑
千家信息网最后更新 2024年11月29日,Too many connections从字面理解,mysql连接数过多。当连接数量过多,且来不及释放时便会出现此错误。查看mysql当前连接信息,特别要注意sleep休眠状态的连接。show ful
千家信息网最后更新 2024年11月29日Mysql Too many connections解决方案
Too many connections
从字面理解,mysql连接数过多。当连接数量过多,且来不及释放时便会出现此错误。
查看mysql当前连接信息,特别要注意sleep休眠状态的连接。
show full processlist;
Command 状态:
- SLEEP
线程正在等待客户端发送新的请求。
- QUERY
线程正在执行查询或者正在将结果发送给客户端。- LOCKED
在MYSQL服务层,该线程正在等待表锁。在存储引擎级别实现的锁,如INNODB的行锁,并不会体现在线程状态中。对于MYISAM来说这是一个比较典型的状态。但在其他没有行锁的引擎中也经常会出现。ANALYZING AND STATISTICS 线程正在收集存储引擎的统计信息,并生成查询的执行计划。- COPYING TO TMP TABLE (ON DISK)
线程正在执行查询,并且将其结果集都复制到一个临时文件中,这种状态一般要么是在做GROUP BY操作,要么是文件排序操作,或者是UNION操作。如果这个状态后面还有ON DISK的标,那表示MYSQL正在将一个内存临时表放到磁盘上。- SORTING RESULT
线程正在对结果集进行排序。- SENDING DATA
线程可能在多个状态之间传送数据,或者生成结果集,或者在向客户端返回数据。
查看mysql设置的最大连接数
show global variables like 'max_connections';
服务器响应的最大连接数
show global variables like 'max_user_connections';
建议:服务器响应的最大连接数值占服务器上限连接数值的比例值在10%以上,如果在10%以下,说明mysql服务器最大连接上限值设置过高。
max_user_connections/max_connections * 100% >=10%
如果最大连接数量没问题,而sleep休眠状态的连接过多,则应该从两方面注意:
- 1。 wait_timeout 空闲等待超时时间
- 2。 interactive_timeout 交互超时时间(通过mysql客户端连接数据库是交互式连接)
需要主题:wait_timeout设置过大有弊端,其体现就是MySQL里大量的SLEEP进程无法及时释放,拖累系统性能。如果设置过小,可能会遭遇到"MySQL has gone away"之类的问题。
要想从根本上解决sleep过多的问题,需从以下面三点排查:
- 1。程序连接mysql,不使用持久链接。即使用mysqli_connect而不是pconnect。
- 2。程序执行结束,主动显式调用mysqli_close来释放连接资源。
- 3。解决程序中的SQL慢查询语句。
最后快速解决过程
set GLOBAL max_connections = 500;set GLOBAL wait_timeout = 300;set GLOBAL interactive_timeout = 600;
正在
状态
线程
最大
服务
客户
客户端
服务器
结果
过多
查询
引擎
数据
程序
问题
信息
数值
数量
文件
时间
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
图数据库本拉登
数据库 日期最晚
数据库保存成功但没有数据库
云霄县韩逸网络技术工作室
中专学历软件开发
服务器的稳定性
曙光服务器管理卡
村级网络安全防范总结
合肥旅呗网络技术
广西智慧医养软件开发哪儿好
垫江租房软件开发
如何建设网络安全议论文
检测网络安全的工具
程序员面试数据库讲师
杭州中宝科技 软件开发
软件开发快速迭代
软件开发与管理试卷
网络软件开发名词解释
ibm图形服务器t430
GALE数据库技术学院
tcga数据库下载和处理
2022网络安全宣传策划
计算机三级数据库2021真题
单位网络安全梳理自查报告
三星s5连接不上服务器
软件开发高工资
凤娱网络技术
重庆工控软件开发需要多少钱
文科生学网络技术吃力吗
护苗网络安全讲稿