数据库
首页 > 数据库> > Mysql数据库CPU100%问题临时紧急处理

Mysql数据库CPU100%问题临时紧急处理

作者:互联网

在执行一些sql语句的时候,有时候可能会使mysql的cpu占用爆涨,出现其它的应用无法使用的情况,这时候就要去停止正在执行的语句,如何不执行mysql restart的情况下,只把占用cpu多的语句kill掉呢,使用如下的方法就可以:

1、执行 show processlist; 查看msyql在等待执行的队列

show processlist; 

2、使用mysqladmin杀死相应的id

mysqladmin -uroot -p kill [id]

3、show processlist命令的数据存放在 INFORMATION_SCHEMA的PROCESSLIST表中.
SELECT CONCAT(‘KILL ‘,ID,’;’) FROM INFORMATION_SCHEMA.PROCESSLIST WHERE 过滤条件 ;
即可过滤要kill的线程Id,然后执行所得结果集.

select * from information_schema.processlist;
select id,command,time,state,info from information_schema.processlist WHERE STATE = 'Sending data';

select CONCAT('KILL ',ID,';') from information_schema.processlist WHERE STATE = 'Sending data';

查询结果导出,替换掉不必要的字符,全部执行即可删除所有的 慢查询队列

KILL 2416214;
KILL 2416213;
...
KILL 1791059;

标签:show,数据库,CPU100%,KILL,Mysql,processlist,kill,执行,WHERE
来源: https://blog.csdn.net/tingfenyijiu/article/details/115330732