批量杀死mysql慢查询

前提:监控报警某个数据库有大量的慢查询,原因是开发人员提交代码忘记sql忘记加上正确的时间过滤,引起大量慢查询,而后面查询数据库都需要费大量的时间才能返回结果,现需要把慢查询批量杀死。

1、使用 show full  processlist 查看完整状态

【将查看到的状态保存到本地文件】

mysql -h'127.0.0.1' -u'root' -p'xxx' -P 3306 -e "show full processlist;" | grep "xxx" | awk '{print $1}' >> mysql_slow.txt

2、可以使用 kill  进程号 杀死进程【有欲慢查询太多,此处使用脚本直接杀死进程】

[root@note1 ~]# cat kill.sh 

#!/bin/bash
for id in `cat mysql_slow.txt`
do
mysql -h'127.0.0.1' -u'root' -p'xxx' -P 3306 -e "KILL QUERY "$id";"
done

3、再次查看进程 show full  processlist 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值