Shell脚本自动杀死mysql睡眠进程 [英] Shell Script to auto kill mysql sleep processes
本文介绍了Shell脚本自动杀死mysql睡眠进程的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我们如何杀死mysql睡眠进程,例如:
How We Kill mysql sleep processes Like:
+------+-----------+-----------+------------------------+---------+------+----------------+-------------------------------------------------------------------------------------------+
| Id | User | Host | db | Command | Time | State | Info |
+------+-----------+-----------+------------------------+---------+------+----------------+-------------------------------------------------------------------------------------------+
| 2477 | stageuser | localhost | jj_production_11102013 | Query | 0 | end | SELECT * FROM wp_comments WHERE blog_id = 1071 ORDER BY comment_date_gmt DESC LIMIT 0, 50 |
| 3050 | stageuser | localhost | jj_production_11102013 | Query | 0 | Sorting result | SELECT * FROM wp_comments WHERE blog_id = 1071 ORDER BY comment_date_gmt DESC LIMIT 0, 50 |
| 3052 | stageuser | localhost | jj_production_11102013 | Sleep | 336 | | NULL |
| 3056 | stageuser | localhost | NULL | Query | 0 | NULL | show processlist |
| 3057 | stageuser | localhost | jj_production_11102013 | Sleep | 301 | | NULL |
| 3058 | stageuser | localhost | jj_production_11102013 | Sleep | 299 | | NULL |
| 3059 | stageuser | localhost | jj_production_11102013 | Sleep | 298 | | NULL |
| 3061 | stageuser | localhost | jj_production_11102013 | Sleep | 273 | | NULL |
| 3068 | stageuser | localhost | jj_production_11102013 | Sleep | 251 | | NULL |
| 3072 | stageuser | localhost | jj_production_11102013 | Sleep | 233 | | NULL |
| 3111 | stageuser | localhost | jj_production_11102013 | Sleep | 1 | | NULL |
+------+-----------+-----------+------------------------+---------+------+----------------+-------------------------------------------------------------------------------------------+
11 rows in set (0.00 sec)
此睡眠过程是否会像其他慢查询一样影响网站性能?
Is this sleep processes affect site performance like slow other queries?
推荐答案
我做到了.
创建kill_sleep.sh文件
Create kill_sleep.sh file
mysql -u<user> -p<password> -h<host> -e "select concat('KILL ',id,';') into outfile '/tmp/sleep_processes.txt' from information_schema.processlist where Command = 'Sleep'"
mysql -u<user> -p<password> -h<host> -e "source /tmp/sleep_processes.txt;"
rm -rf /tmp/sleep_processes.txt
然后将kill_sleep.sh设置为cron作业.
And set kill_sleep.sh to cron job .
这篇关于Shell脚本自动杀死mysql睡眠进程的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文