• mysql 连接数太多


    【问题记录】:
    MySQL: ERROR 1040: Too many connections

    【解决办法】:
    1.查看mysql的最大连接数:

    mysql> show variables like '%max_connections%'; //500
    

    2.查看服务器响应的最大连接数:

    mysql> show global status like 'Max_used_connections'; //501
    

    3.设置这个最大连接数值:

    // 方法一:
    mysql> set GLOBAL max_connections=256;
    
    //方法二:永久更改
    vi /etc/my.cnf
    max_connections = 512
    
    //方法三:非使用mysqld脚本自动启动的用户。
    修改$MYSQL_HOME/bin/mysqld_safe文件
    例如:/usr/local/mysql/bin/mysqld_safe这个文件
    grep -n ‘max_connection’ $MYSQL_HOME/bin/mysqld_safe
    修改对应行号的max_connections参数值
    

    说明:

    对于mysql服务器最大连接数值的设置范围比较理想的是:
    服务器响应的最大连接数值占服务器上限连接数值的比例值在10%以上,如果在10%以下,说明mysql服务器最大连接上限值设置过高。

    设置最大max_connections值没有硬性限制。因此,您必须根据工作量,与MySQL服务器的同时连接数等来明智地选择max_connections。通常,建议不要将max_connections值设置得太高,因为在某些锁定条件下或如果所有这些连接都运行得很大,则会降低速度竞争问题可能会出现。

    在使用临时/内存表进行活动连接的情况下,内存使用率可能会更高。在具有较小RAM或在应用程序端具有大量连接控制的系统上,我们可以使用较小的max_connections值,例如100-300。具有16G RAM或更高的max_connections = 1000的系统是个好主意,每个连接缓冲区应具有良好/默认值,而在某些系统上,我们可以看到最多8k个最大连接,但是在负载峰值的情况下,此类系统通常会崩溃。

    4.服务器等待时间

    mysql> show global variables like 'wait_timeout';  //28800
    

    5.设置等待时间

    mysql> set global wait_timeout=10;
    

    6.所有连接到这个服务器上的MySQL连接

    mysql> show processlist;    
    

    7.杀掉进程

    mysql> kill 1180421;
    

    8.查看当前数据库的所有用户:

    select user,host,password from mysql.user;
    

    9.业务代码处理GORM-psql

    // 关闭链接
    db.DB().Close()
    
    // 全局共享链接的话,设置一个最大打开链接数
    db.DB().SetMaxOpenConns(10) 
    
    // 打开DB
    db, err = gorm.Open("postgres", connCfg)
    
    // 设置最大连接数
    db.DB().SetConnMaxLifetime(5 * time.Second)
    db.DB().SetMaxOpenConns(10)
    db.DB().SetMaxIdleConns(10)
    

    相关链接

    https://www.percona.com/blog/2013/11/28/mysql-error-too-many-connections/
    https://blog.51cto.com/tiany/1725955
    https://dev.mysql.com/doc/refman/8.0/en/too-many-connections.html

  • 相关阅读:
    2018.11.5 Nescafe26 T1 小猫爬山
    2018.10.30 NOIp模拟赛T2 数字对
    2018.10.30 NOIp模拟赛 T1 改造二叉树
    2018/7/16 YMOI模拟 NOIP2013D2T3华容道
    数据结构实验
    我的第一个博客
    题解 P5035 【金坷垃】
    题解 P5036 【随机生成树】
    题解 P5037 【抓捕】
    题解 P1328 【生活大爆炸版石头剪刀布】
  • 原文地址:https://www.cnblogs.com/tomtellyou/p/12888164.html
Copyright © 2020-2023  润新知