mysql中Too many connections问题怎么处理

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

本文将详细解释如何处理mysql中连接过多的问题。边肖觉得很实用,分享给大家参考。希望你看完这篇文章能有所收获。

1.问题陈述

应用程序登录中连接过多时报告的错误

mysql中Too  many  connections问题怎么处理

请检查mysql数据库服务器是否已达到max_connections上限。

mysql中Too  many  connections问题怎么处理

mysql显示像“max_connections”这样的变量;

- -

|变量名|值|

- -

| max_connections | 1900 |

- -

1行一组(0.00秒)

mysql显示processlist

会话数已达到1900个。

thread_pool设置不会阻止会话数量的增加。

mysql显示像“thread_pool%”这样的变量;

- -

|变量名|值|

- -

|线程池算法| 0 |

|线程池_高优先级_连接| 0 |

| thread _ pool _ max _ unused _ threads | 0 |

| thread _ pool _ prio _ kickup _ timer | 1000 |

| thread_pool_size | 16 |

| thread_pool_stall_limit | 6 |

- -

6行一组(0.00秒)

2.问题处理

重新启动mysql服务。重启mysql服务后,mysql中的会话数量确实减少了,但很快会话数量就上升到了1900个。

判断mysql服务器端的会话没有释放,但是应用端的会话没有释放。

重启应用的两台服务器,mysql会话数将恢复正常。

3.结论

我们先来看看mysql服务器的会话保持时间:

mysql显示像“%wait_timeout%”这样的变量;

- -

|变量名|值|

- -

| innodb_lock_wait_timeout | 50 |

| lock_wait_timeout | 31536000 |

| wait_timeout | 28800 |

- -

3行一组(0.00秒)

mysql显示像“%interactive_timeout%”这样的变量;

- -

|变量名|值|

- -

| interactive_timeout | 28800 |

- -

1行一组(0.00秒)

Interactive_timeout:服务器在关闭交互连接之前等待活动的秒数。交互式客户端被定义为在mysql_real_connect()中使用CLIENT _ INTERVAL选项的客户端。另请参见wait_timeout。

Wait_timeout:服务器在关闭非交互连接之前等待活动的秒数。当线程启动时,会话wait_timeout值根据全局wait_timeout值或全局interactive_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、在客户端使用连接池(在MySQL Connector中)来减少客户端和服务器之间的活动连接数。

是的,在客户端安装MySQL连接器。

2、改进应用程序设计,以减少所需的活动连接数,并减少连接保持活动状态的时间。

从应用程序方面,减少并发的数量和每个会话的保持时间。

3、通过调整max_connections来增加MySQL服务器处理的连接数(请记住,这会消耗额外的内存,并且仍然是有限的)

增加mysql服务器上的最大连接数,但会消耗大量内存。

建议第二种方法。因为当前应用程序会话保持时间为10分钟,所以建议降低该值。

这篇关于“如何处理mysql连接太多的问题”的文章就分享到这里了,希望。

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/73049.html

(0)

相关推荐

  • unicode如何实现中文转换

    技术unicode如何实现中文转换这篇文章将为大家详细讲解有关unicode如何实现中文转换,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。public static String ge

    攻略 2021年12月3日
  • WiFi攻击方式有哪些

    技术WiFi攻击方式有哪些这篇文章给大家分享的是有关WiFi攻击方式有哪些的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。1. 伪造MAC地址很多时候开放网络的身份验证往往就是通过上网设备的MA

    攻略 2021年11月20日
  • isemodelsim仿真步骤(ise如何使用modelsim仿真)

    技术怎么进行ModelSim独立仿真ISE的仿真工程本篇文章为大家展示了怎么进行ModelSim独立仿真ISE的仿真工程,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。详细操作步骤

    攻略 2021年12月22日
  • JNA在Linux和MAC怎么编译C

    技术JNA在Linux和MAC怎么编译C这篇文章主要讲解了“JNA在Linux和MAC怎么编译C”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“JNA在Linux和MAC怎

    攻略 2021年11月30日
  • 数模技巧不用for循环且使用ggplot2如何实现地图上连线

    技术数模技巧不用for循环且使用ggplot2如何实现地图上连线小编给大家分享一下数模技巧不用for循环且使用ggplot2如何实现地图上连线,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!1. 前文回顾

    攻略 2021年11月14日
  • Hibernate事务的示例分析

    技术Hibernate事务的示例分析小编给大家分享一下Hibernate事务的示例分析,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!Hiber

    攻略 2021年12月8日