• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    CentOS 7中MySQL连接数被限制为214个的解决方法

    发现问题

    最近在项目中遇到一个问题,由于连接数过多,提示 “Too many connections” ,需要增加连接数。

    我在 /etc/my.cnf中修改了:

    max_connections = 2000

    但是, 实际连接数一直被限制在 214:

    mysql> show variables like "max_connections";
    +-----------------+-------+
    | Variable_name | Value |
    +-----------------+-------+
    | max_connections | 214 |
    +-----------------+-------+
    1 row in set

    思考

    如果我设置连接小于214时,比如 200,那么实际连接数就是 200,也就是说,我的配置文件是没有问题的。

    查 MySQL 官方文档,里面说了:

    The maximum number of connections MySQL can support depends on the quality of the thread library on a given platform, the amount of RAM available, how much RAM is used for each connection, the workload from each connection, and the desired response time. Linux or Solaris should be able to support at 500 to 1000 simultaneous connections routinely and as many as 10,000 connections if you have many gigabytes of RAM available and the workload from each is low or the response time target undemanding. Windows is limited to (open tables × 2 + open connections) 2048 due to the Posix compatibility layer used on that platform.
    Increasing open-files-limit may be necessary. Also see Section 2.5, “Installing MySQL on Linux”, for how to raise the operating system limit on how many handles can be used by MySQL.

    大概意思是 MySQL 能够支持的最大连接数量受限于操作系统,必要时可以增大 open-files-limit。换言之,连接数与文件打开数有关。

    解决方法

    [root@sqzr ~]# ulimit -n
    1024

    可知,操作系统最大文件描述符限制为 1024。

    更改 MySQL 在 Linux 的最大文件描述符限制,编辑 /usr/lib/systemd/system/mysqld.service 文件,在文件最后添加:

    LimitNOFILE=65535
    LimitNPROC=65535

    保存后,执行下面命令,使配置生效

    $ systemctl daemon-reload
    $ systemctl restart mysqld.service

    实际连接数到 2000 了,解决

    mysql> show variables like "max_connections";
    +-----------------+-------+
    | Variable_name  | Value |
    +-----------------+-------+
    | max_connections | 2000 |
    +-----------------+-------+
    1 row in set

    参考

    https://dev.mysql.com/doc/refman/5.7/en/too-many-connections.html

    https://www.oschina.net/question/853151_241231

    总结

    以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对脚本之家的支持。

    您可能感兴趣的文章:
    • python 连接数据库mysql解压版安装配置及遇到问题
    • 查看mysql当前连接数的方法详解
    • Mysql查看最大连接数和修改最大连接数的讲解
    • mysql最大连接数设置技巧总结
    • mysql连接数设置操作方法(Too many connections)
    • 完美解决MySQL通过localhost无法连接数据库的问题
    • JavaWeb连接数据库MySQL的操作技巧
    • Python 3.x 连接数据库示例(pymysql 方式)
    • php mysql操作mysql_connect连接数据库实例详解
    • 总结MySQL修改最大连接数的两个方式
    • Mysql连接数设置和获取的方法
    上一篇:mac下安装mysql忘记密码的修改方法
    下一篇:Windows平台配置5.7版本+MySQL数据库服务
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    CentOS 7中MySQL连接数被限制为214个的解决方法 CentOS,中,MySQL,连接,数,被,