• MySQL服务器最大连接数的合理设置



    MySQL服务器的连接数并不是要达到最大的100%为好,还是要具体问题具体分析,下面就对MySQL服务器最大连接数的合理设置进行了详尽的分析,供您参考。

    我们经常会遇见“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服务器连接上线就设置得过高了。

    查看mysql当前连接数
    1、查看当前所有连接的详细资料:
    mysqladmin -uroot -proot processlist

    D:MySQLin>mysqladmin -uroot -proot processlist
    +-----+------+----------------+---------+---------+------+-------+------------------+
    | Id | User | Host | db | Command | Time | State | Info |
    +-----+------+----------------+---------+---------+------+-------+------------------+
    | 591 | root | localhost:3544 | bbs | Sleep | 25 | | |
    | 701 | root | localhost:3761 | | uery | 0 | | show processlist |
    +-----+------+----------------+---------+---------+------+-------+------------------+

    2、只查看当前连接数(Threads就是连接数.):
    mysqladmin -uroot -proot status

    D:MySQLin>mysqladmin -uroot -proot status
    Uptime: 2102 Threads: 3 Questions: 15531 Slow queries: 0 Opens: 0 Flush tab
    les: 1 Open tables: 61 Queries per second avg: 7.389

    3、修改mysql最大连接数:
    打开my.ini,修改max_connections=100(默认为100)。

  • 相关阅读:
    LINUX 环境变量总结
    make的自动变量和预定义变量
    函数调用约定和堆栈
    如何查看linux命令源代码
    shell脚本中特定符合变量的含义
    【转载】Redhat5和6 YUM源配置的区别
    用路径分析法来编写测试用例
    linux ip 设置
    Mysql 的存储引擎,myisam和innodb的区别。
    一些编译php时的configure 参数
  • 原文地址:https://www.cnblogs.com/dongruiha/p/7600119.html
Copyright © 2020-2023  润新知