2种控制MySQL连接数访问量的方法

    作者:课课家更新于: 2017-01-20 14:04:49

    软考,您想通过吗?一次通过才是硬道理

      相信大家都遇到过MySQL数据库因连接数过多导致访问量过大的问题,对于此我们有什么好的方法去解决这个令人棘手的问题呢?在本篇文章中课课家笔者就此向大家详细介绍解决MySQL数据库因连接数过多导致访问量过大的解决方法以供大家参考参考。

    2种控制MySQL连接数访问量的方法_考试认证_等级考试_MySQL_课课家

     


     

      在实际的开发过程中比较多的开发技术者们都会遇到过”MySQL:ERROR 1040:Too many connections”的异常情况,而造成这种情况的原因通常有以下两种:

      ● 访问量过高导致MySQL服务器抗不住

      ● MySQL配置文件中max_connections值过小

      对于此我们首先应该查看MySQL的最大连接数,下面是具体的代码:

      mysql>showvariableslike'%max_connections%';    +-----------------+-------+    |Variable_name|Value|    +-----------------+-------+    |max_connections|151|    +-----------------+-------+    1rowinset(0.00sec)

      接下来我们查看服务器响应的最大连接数,下面是具体的代码:

      mysql>showglobalstatuslike'Max_used_connections';    +----------------------+-------+    |Variable_name|Value|    +----------------------+-------+    |Max_used_connections|2|    +----------------------+-------+    1rowinset(0.00sec)

      从上面我们可以发现服务器响应的最大连接数为2,远远低于MySQL服务器允许的最大连接数值,为此我们需要设置最大连接数的范围。当然我们不是随便设置最大连接数的范围的,对于理想设置MySQL服务器最大连接数值的范围的方法是:服务器响应的最大连接数值占服务器上限连接数值的比例值在10%以上,如果在10%以下则说明MySQL服务器最大连接上限值设置过高。

      Max_used_connections / max_connections*100% = 2/151 *100% ≈ 1%

      既然我们知道如何查看MySQL服务器的最大连接数值且知道了如何判断该值是否合理,那么下面笔者就为大家介绍一下如何设置这个最大连接数值。

      Method 1

      第一种方法具体如下所示:

      mysql>setGLOBALmax_connections=256;    QueryOK,0rowsaffected(0.00sec)    mysql>showvariableslike'%max_connections%';    +-----------------+-------+    |Variable_name|Value|    +-----------------+-------+    |max_connections|256|    +-----------------+-------+    1rowinset(0.00sec)

      Method 2

      第二种方法我们修改MySQL配置文件my.cnf并在[MySQLd]段中添加或修改max_connections值:

      max_connections=128

      最后我们重启MySQL服务就可以。

      


     

      以上就是2种控制MySQL连接数访问量的方法介绍,笔者相信大家都应该对此有一个比较基本的了解了吧。另外如果大家觉得笔者的文章中有不足的地方时笔者欢迎大家对本文章中出现的讲解提出自己的个人建议,对出现错误的地方提出批评,笔者会诚心接纳大家的建议和批评,并根据大家提出的建议和批评作出相应的修改工作。如果大家还想浏览更多相关的内容欢迎到网 站的IT文库浏览文章哦!

课课家教育

未登录