在线精品99_中国九九盗摄偷拍偷看_91免费版在线观看_91.app_91高清视频在线_99热最新网站

mysql中Too many connections问题怎么处理

102次阅读
没有评论

共计 2652 个字符,预计需要花费 7 分钟才能阅读完成。

这篇文章将为大家详细讲解有关 mysql 中 Too many connections 问题怎么处理,丸趣 TV 小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。

1、问题展现
应用端登录出现 Too many connections 报错

检查发现 mysql 数据库服务端已经达到了 max_connections 上限

mysql show variables like max_connections
+—————–+——-+
| Variable_name   | Value |
+—————–+——-+
| max_connections | 1900  |
+—————–+——-+
1 row in set (0.00 sec)

mysql show processlist;
已经达到了 1900 会话数。

thread_pool 设置并不能阻止会话数的上升。
mysql show variables like thread_pool%
+————————————–+——-+
| Variable_name                        | Value |
+————————————–+——-+
| thread_pool_algorithm                | 0     |
| thread_pool_high_priority_connection | 0     |
| thread_pool_max_unused_threads       | 0     |
| thread_pool_prio_kickup_timer        | 1000  |
| thread_pool_size                     | 16    |
| thread_pool_stall_limit              | 6     |
+————————————–+——-+
6 rows in set (0.00 sec)

2、问题处理
重启 mysql 的服务。重启完 mysql 服务后,的确 mysql 的 session 数下降了,但是很快会话数又上升到了 1900。
判断并不是 mysql 的服务器端的会话没释放,而是 application 端的会话没释放。
重启 application 的两台服务器,mysql 的会话数恢复正常。

3、结论
先来看看 mysql 服务器端的会话保持时间:
mysql show variables like %wait_timeout%  
+————————–+———-+ 
| Variable_name | Value | 
+————————–+———-+ 
| innodb_lock_wait_timeout | 50 | 
| lock_wait_timeout | 31536000 | 
| wait_timeout | 28800 | 
+————————–+———-+ 
3 rows in set (0.00 sec) 

mysql show variables like %interactive_timeout%  
+———————+——-+ 
| Variable_name | Value | 
+———————+——-+ 
| interactive_timeout | 28800 | 
+———————+——-+ 
1 row in set (0.00 sec) 

interactive_timeout:服务器关闭交互式连接前等待活动的秒数。交互式客户端定义为在 mysql_real_connect()中使用 CLIENT_INTERACTIVE 选项的客户端。又见 wait_timeout 
wait_timeout: 服务器关闭非交互连接之前等待活动的秒数。在线程启动时,根据全局 wait_timeout 值或全局 interactive_timeout 值初始化会话 wait_timeout 值,取决于客户端类型 (由 mysql_real_connect() 的连接选项 CLIENT_INTERACTIVE 定义),又见 interactive_timeout 
如此看来,两个变量是共同控制的,那么都必须对他们进行修改了。继续深入这两个变量 wait_timeout 的取值范围是 1 -2147483(Windows),1-31536000(linux),interactive_time 取值随 wait_timeout 变动,它们的默认值都是 28800。 
MySQL 的系统变量由配置文件控制,当配置文件中不配置时,系统使用默认值,这个 28800 就是默认值。要修改就只能在配置文件里修改。Windows 下在 %MySQL HOME%/bin 下有 mysql.ini 配置文件,打开后添加两个变量,赋值。 

要解决这个问题:
1、Use connection pooling at client side (in MySQL Connector) to reduce the number of active connections between the client and the server. 
是在客户端安装 MySQL Connector
2、Improve the application design to reduce the number of active connections needed and to reduce the time the connection has to stay active. 
从应用端去降低并发数,减少每个会话的保持时间
3、Increase the number of connections handled by MySQL server by adjusting max_connections (keep in mind that this consumes additional RAM and is still limited)
在 mysql 服务器端增加最大连接数设置,不过会消耗大量内存

建议用第二种方法。因为当前应用会话保持时间是 10 分钟,建议降低这个数值。

关于“mysql 中 Too many connections 问题怎么处理”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。

正文完
 
丸趣
版权声明:本站原创文章,由 丸趣 2023-07-26发表,共计2652字。
转载说明:除特殊说明外本站除技术相关以外文章皆由网络搜集发布,转载请注明出处。
评论(没有评论)
主站蜘蛛池模板: av人摸人人人澡人人超碰妓女 | 高清大学生毛片一级 | 亚洲电影成人 成人影院 | 欧美性猛交xxxx黑人喷水 | 久久青青草原亚洲av无码app | 国产理论在线 | 国产精品毛片a∨一区二区三区 | 成年男女免费视频网站播放 | 蜜芽国产尤物av尤物在线看 | 日本xxxx色视频在线观看 | 狠狠色婷婷久久综合频道日韩 | 国产午夜精品一区理论片 | 亚洲国产精品乱码一区二区三区 | 久久不卡影院 | 中国美女一级毛片 | 永久免费无码av网站在线观看 | 成人精品视频一区二区在线 | 99在线免费视频 | 奇米777四色精品综合影院 | 一区二区在线免费视频 | 任你敢不一样精品的视频 | 日韩毛片一级 | 精品欧美一区二区在线观看欧美熟 | 久久国产亚洲av无码麻豆 | 99久久国产综合精品女小说 | 久久婷婷香蕉热狠狠综合 | 九九热在线免费视频 | 亚洲精品高清av在线播放 | 在线观看成人免费视频 | 色婷婷综合久久久久中文一区二区 | 亚洲欧美日本在线 | 巨大巨粗巨长 黑人长吊 | 四虎影视2022入口网址 | 国产女主播高潮在线播放 | 精品久久久久国产 | www.男人 | 亚洲国产精品va在线观看麻豆 | 亚洲欧美在线观看视频 | 免费成人福利视频 | 成人免费观看在线视频 | 无套内内射视频网站 |