繁体   English   中英

MySQL中的连接错误太多

[英]Too many connections error in mysql

我正在使用C#和MySql( 存储过程 )开发一个应用程序 在运行该应用程序一段时间后,它显示连接过多 然后,我使用了SHOW STATUS WHERE variable_name = 'Threads_connected';类的命令SHOW STATUS WHERE variable_name = 'Threads_connected'; SHOW PROCESSLIST; 调试问题。 似乎每次我对应用程序执行任何操作时,mysql都会创建一个新线程,并且该线程被标记为Sleep 而且线程不会按时关闭。 我找到了一种解决方案,即如下设置mysql环境变量。

 interactive_timeout=180
 wait_timeout=180
  1. 该解决方案会自动终止连接,对应用程序有影响吗? 如果从数据库中获取数据的时间过长会怎样?
  2. 我预计一次会有大约1000笔巨大的流量。 那么,mysql中的最大连接数应该是多少? 这会降低mysql的性能吗?

[注意:我的应用程序没有问题,因为我已经关闭了每个mysql连接]

提前致谢。

我希望下面的文章能帮助您获得第二点的答案

http://dev.mysql.com/doc/refman/5.5/en/too-many-connections.html

如果应用程序无法正确关闭连接,wait_timeout是调整和丢弃未使用或空闲连接以最小化与MySQL服务器的活动连接数的重要参数,这最终将有助于避免“连接过多”错误。

Threads_running是一个有价值的度量指标,因为它不计算休眠线程的数量–它显示活动线程和当前正在处理的查询数量,而threads_connected状态变量显示所有连接的线程值,包括空闲连接

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM