标题:
杀掉mysql sleep进程的shell
[打印本页]
作者:
xiexie
时间:
2013-1-22 10:17
标题:
杀掉mysql sleep进程的shell
#!/bin/bash#while [ "2" -gt "1" ]
#do
log_command=`mysqladmin processlist | grep -i sleep | wc -l`
date=`date +%Y%m%d\[%H:%M:%S]`
#echo $log_command
if [ "$log_command" -gt 250 ]
then
for i in `mysqladmin processlist | grep -i sleep | awk '{print $2}'`
do
mysqladmin kill $i
done
echo "$date : $log_command, sleep is too many i killed it" >> /data/killsleep/sleep.log
else
echo "$date : $log_command, not need to kill" >> /data/killsleep/sleep.log
fi
# sleep 180
#done
注意mysqladmin执行的用户,直接在命令行执行mysqladmin processlist | grep -i sleep | wc -l,实际上是-uroot。在命令行执行这个脚本时候用的是登录服务器的用户。而用crontab执行的时候,虽然编辑的是root的crontab,但执行的时候不是root用户,是哪个我也不知道。最好在crontab的命令里加上su - root。
欢迎光临 PHP开发笔记 (http://phpvi.com/)
Powered by Discuz! 6.1.0