当前位置: 首页 > 工具软件 > SqlShell > 使用案例 >

笔记整理 之 快速Kill 卡死的慢SQL Shell代码脚本

东郭京
2023-12-01

某个初级dba误删index,mysql漫山遍野全是10S以上的慢sql,mysql服务被hang住了,而且慢sql不断在增加中,如果手动在mysql界面kill的话,根本来不及,这个时候,shell就必须要出手了,如下的shell脚本,大家可以参考:

 

#It is used to kill processlist of mysql sleep#!/bin/shwhile :



do

n=`mysqladmin processlist -uadmin -pxxxxx|grep -i sleep |wc -l`

date=`date +%Y%m%d\[%H:%M:%S]`

echo $n



if [ "$n" -gt 10 ]

then

for i in `mysqladmin processlist -uadmin -pxxxxxx|grep -i sleep |awk '{print $2}'`

do

mysqladmin -uadmin -pxxxxxx kill $i

done

echo "sleep is too many I killed it " >> /tmp/sleep.log

echo "$date : $n" >> /tmp/sleep.log

fi

sleep 1

done

 

最后,赶紧添加上合适的索引!

 类似资料: