MySQL被慢sql hang住了,用shell脚本快速清除不断增长的慢sql的办法
2015-04-28 13:28
513 查看
某个初级dba误删index,mysql漫山遍野全是10S以上的慢sql,mysql服务被hang住了,而且慢sql不断在增加中,如果手动在mysql界面kill的话,根本来不及,这个时候,shell就必须要出手了,如下的shell脚本,大家可以参考:
#It is used to kill processlist of mysql sleep
#!/bin/sh
while :
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
最后,赶紧添加上合适的索引!
#It is used to kill processlist of mysql sleep
#!/bin/sh
while :
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
最后,赶紧添加上合适的索引!
相关文章推荐
- 【转载】MySQL被慢sql hang住了,用shell脚本快速清除不断增长的慢sql的办法
- MySQL被慢sql hang住了,用shell脚本快速清除不断增长的慢sql的办法
- Shell脚本中执行sql语句操作mysql的5种方法
- Shell脚本中执行sql语句操作mysql
- 分析Mysql慢日志脚本及快速定位慢Sql
- MySQL 执行SQL脚本 报ERROR 1231 (42000)的解决办法
- mysql 快速清除指定表中数据的sql语句
- Shell脚本中执行sql语句操作mysql的5种方法
- Shell脚本中执行sql语句操作mysql
- mysql快速执行超大sql脚本方法
- shell脚本操作mysql数据库,使用mysql的-e参数可以执行各种sql的(创建,删除,增,删,改、查)等各种操作
- 【shell sql】shell脚本嵌入mysql语句以进行遍历表的操作
- Shell脚本中执行sql语句操作mysql的5种方法
- shell脚本操作mysql数据库,使用mysql的-e参数可以执行各种sql的(创建,删除,增,删,改、查)等各种操作
- MySQL 执行SQL脚本 报ERROR 1231 (42000)的解决办法【转】
- Shell脚本中执行sql语句操作mysql的5种方法
- shell脚本操作mysql数据库,使用mysql的-e参数可以执行各种sql的(创建,删除,增,删,改、查)等各种操作
- shell脚本操作mysql数据库,使用mysql的-e参数可以执行各种sql的(创建,删除,增,删,改、查)等各种操作
- Shell脚本中执行sql语句操作mysql
- shell脚本自动修复mysql损坏的表