zoukankan      html  css  js  c++  java
  • 实时查看mysql连接数

    mysql> show status like 'Threads%';
    +-------------------+-------+
    | Variable_name | Value |
    +-------------------+-------+
    | Threads_cached | 58 |   ###代表当前此时此刻线程缓存中有多少空闲线程
    | Threads_connected | 57 | ###代表当前已建立连接的数量,因为一个连接就需要一个线程,所以也可以看成当前被使用的线程数
    | Threads_created | 3676 |  ###代表从最近一次服务启动,已创建线程的数量(表示创建过的线程数)
    | Threads_running | 4 | ###这个数值指的是激活的连接数,这个数值一般远低于connected数值
    +-------------------+-------+

    Threads_connected 跟show processlist结果相同,表示当前连接数。准确的来说,Threads_running是代表当前并发数

    经常会遇见”mysql: error 1040: too many connections”的情况,一种是访问量确实很高,mysql服务器抗不住,这个时候就要考虑增加从服务器分散读压力,另外一种情况是mysql配置文件中max_connections值过小: 

    mysql> show variables like ‘max_connections‘;

    +-----------------+-------+

    | variable_name  | value   |

    +-----------------+-------+

    | max_connections | 256  |

    +-----------------+-------+ 

    这台mysql服务器最大连接数是256,然后查询一下服务器响应的最大连接数:

     mysql> show global status like ‘max_used_connections‘; 

    mysql服务器过去的最大连接数是245,没有达到服务器连接数上限256,应该没有出现1040错误,比较理想的设置是

     max_used_connections / max_connections * 100% ≈ 85% 

    最大连接数占上限连接数的85%左右,如果发现比例在10%以下,mysql服务器连接数上限设置的过高了。

    threads_created表示创建过的线程数,如果发现threads_created值过大的话,表明mysql服务器一直在创建线程,这也是比较耗资源,可以适当增加配置文件中thread_cache_size值,

    查询服务器 thread_cache_size 配置: 

    mysql> show variables like ‘thread_cache_size‘;

    +-------------------+-------+

    | variable_name   | value   |

    +-------------------+-------+

    | thread_cache_size | 64   |

    +-------------------+-------+ 

    示例中的服务器还是挺健康的。

  • 相关阅读:
    Philosopher(set 线段树合并)
    [NOI2013]书法家
    [NOI2013]树的计数
    [NOI2013]向量内积
    对于有关东方的题目的整理。。
    BZOJ 1412: [ZJOI2009]狼和羊的故事
    BZOJ 1877: [SDOI2009]晨跑
    BZOJ 2039: [2009国家集训队]employ人员雇佣
    BZOJ 1934: [Shoi2007]Vote 善意的投票
    BZOJ 1070: [SCOI2007]修车
  • 原文地址:https://www.cnblogs.com/xwjBlog/p/13098931.html
Copyright © 2011-2022 走看看