zoukankan      html  css  js  c++  java
  • MySQL调优修改mysSql的空闲连接关闭时间,以及最大连接数的方法

    Data source rejected establishment of connection, message from server: "Too many connections"

    有一次,我启动springboot时会报上面的错误。可能是和我的项目有关吧,我的项目在初始化的时候,会用数据库,把一些数据预加载到缓存里面,在这一过程中,产生了很多的数据库连接,没有释放,因为mysql的连接默认释放时间是八个小时,这些链接越积越多,就导致连接池满了,无法正常使用数据库。

    我用:

    mysql -uroot -p

    进入mysql,输入

    show full processlist

    发现有大量的连接没有释放。所以参照了下面这个老哥的方法:

    https://blog.csdn.net/ljphhj/article/details/23804057

    在linux的/etc目录下,vi my.cnf,这个是linux系统中mySql的配置文件。

    在[mysqld] 下面添加下面三行


    max_connections=1000
    max_user_connections=500

    wait_timeout=60

     意思如下:

    //max_connections设置最大连接数为1000

    //max_user_connections设置每用户最大连接数为500
    //wait_timeout表示60秒后将关闭空闲(IDLE)的连接,但是对正在工作的连接不影响。

    之后保存退出,用

    systemctl restart mysqld
    

      重启数据库。之后我再次重启我的系统,观察数据库的线程情况,发现,一分钟之后,连接就销毁的差不多了。问题解决。

    如果是mac端的话,默认是没有配置文件的

    先用

    mysql --help|grep 'my.cnf'

    找到可以允许的配置文件路径,我就放在/etc底下了。

    之后参考这个老哥的做法,在mysqld底下加上那几个配置就行。

    https://www.cnblogs.com/weslie/articles/8553391.html

  • 相关阅读:
    python中join函数
    python实现反转字符串
    map函数
    python中lambda函数
    python中reduce函数
    python实现斐波那契数列
    迭代器和生成器
    经典算法动态图
    数据中心团队对于液体冷却的应用还需要适应
    物联网正将数据中心推向边缘
  • 原文地址:https://www.cnblogs.com/lzh1043060917/p/15571265.html
Copyright © 2011-2022 走看看