mysql数据库如何处理sleep线程过多

栏目:云苍穹知识作者:金蝶来源:金蝶云社区发布:2024-09-23浏览:1

mysql数据库如何处理sleep线程过多

一 查询sleep线程

select * from information_schema.PROCESSLIST where COMMAND='Sleep' order by time desc ;



二 输出需要kill的任务

SELECT GROUP_CONCAT(CONCAT('kill ',id) SEPARATOR '; ') AS cmd FROM information_schema.processlist WHERE USER='root' AND command='Sleep'AND db='dbname' ;

三 执行上步生成的kill任务

kill id号;

四 长远解决方案

代码优化

查看代码是否每一次都有conn.close(),尤其是有一些代码出了异常后没有进行close。

my.cnf参数优化

interactive_timeout=120

wait_timeout=120

wait_timeout指的是mysql在关闭一个非交互的连接之前所要等待的秒数,其取值范围为1-2147483(Windows),1-31536000(linux),默认值28800。

interactive_timeout指的是mysql在关闭一个交互的连接之前所要等待的秒数(交互连接如mysql gui tool中的连接),其取值范围随wait_timeout变动,默认值28800。


mysql数据库如何处理sleep线程过多

一 查询sleep线程select * from information_schema.PROCESSLIST where COMMAND='Sleep' order by time desc ;二 输出...
点击下载文档
确认删除?
回到顶部
客服QQ
  • 客服QQ点击这里给我发消息