首頁 > 資料庫 > mysql教程 > Mysql里面执行show processlist出现很多Sleep状态的线程_MySQL

Mysql里面执行show processlist出现很多Sleep状态的线程_MySQL

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
發布: 2016-06-01 13:31:33
原創
2791 人瀏覽過

bitsCN.com

Mysql里面执行show processlist出现很多Sleep状态的线程

 

由于程序设计的Bug,导致目前这个项目使用的数据库中有很多Sleep状态的线程。找了很多解决办法,还没发现最终有效的解决方案。只能临时使用如下方法:

 

编写shell文件,如killSleepProcess.sh

 

[plain] while :  do    n=`mysqladmin -uroot -p*** processlist | grep -i sleep | wc -l`    date=`date +%Y%m%d/[%H:%M:%S]`    echo $n      if [ "$n" -gt 10 ]    then      for i in `mysqladmin -uroot -p*** processlist | grep -i sleep | awk '{print $2}'`      do        mysqladmin  -uroot -p*** kill $i      done      echo "sleep is too many i killed it" >> /root/tmp/sleep.log      echo "$date : $n" >> /root/tmp/sleep.log    fi  sleep 120 #每隔120 秒 执行一次  done  
登入後複製

 

上面shell代码的结果是:将show processlist查询出的所有为Sleep状态的线程kill掉

 

 

bitsCN.com
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
最新問題
linux - php 解壓縮.gz檔案格式的方法。
來自於 1970-01-01 08:00:00
0
0
0
請教替代方案 mssql
來自於 1970-01-01 08:00:00
0
0
0
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板