ICode9

精准搜索请尝试: 精确搜索
首页 > 数据库> 文章详细

mysql too many connections 解决方法

2020-09-22 06:33:13  阅读:281  来源: 互联网

标签:show many 连接数 connections kill too mysql 连接


1、mysql -u root -p 回车输入密码进入mysql

   

2、show processlist; 

查看连接数,可以发现有很多连接处于sleep状态,这些其实是暂时没有用的,所以可以kill掉

3、show variables like "max_connections"; 

查看最大连接数,应该是与上面查询到的连接数相同,才会出现too many connections的情况

4、set GLOBAL max_connections=1000; 

修改最大连接数,但是这不是一劳永逸的方法,应该要让它自动杀死那些sleep的进程。

5、show global variables like 'wait_timeout'; 

这个数值指的是mysql在关闭一个非交互的连接之前要等待的秒数,默认是28800s

6、set global wait_timeout=300; 

修改这个数值,这里可以随意,最好控制在几分钟内

7、set global interactive_timeout=500; 

修改这个数值,表示mysql在关闭一个连接之前要等待的秒数,至此可以让mysql自动关闭那些没用的连接,但要注意的是,正在使用的连接到了时间也会被关闭,因此这个时间值要合适

批量kill之前没用的sleep连接,在网上搜索的方法对我都不奏效,因此只好使用最笨的办法,一个一个kill

8、select concat('KILL ',id,';') from information_schema.processlist where user='root'; 先把要kill的连接id都查询出来

         (1)复制中间的kill id;内容到word文档

         (2)替换掉符号“|”和回车符(在word中查询^p即可查询到回车符)

         (3)把修改过的内容复制回终端,最后按回车执行

 

 

 

 

标签:show,many,连接数,connections,kill,too,mysql,连接
来源: https://www.cnblogs.com/dhqy/p/13709924.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有