中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

讓那些mysql里睡覺的進程,悄悄的死去吧。

發布時間:2020-07-19 17:57:13 來源:網絡 閱讀:684 作者:冷暖己知 欄目:MySQL數據庫

  公司日本租用了阿里云機器 本身有網絡延遲,有一臺Linux服務器專門用來跑游戲服務,由于歷史原因,加上玩家數量的劇增,導致經常出現大量的sleep進程;

讓那些mysql里睡覺的進程,悄悄的死去吧。


沾上一個腳本用來殺掉sleep進程:

while :  
do  
  n=`mysql -uroot -pfuckdba  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 -pfuckdba processlist | grep -i sleep | awk '{print $2}'`  
    do  
      mysqladmin  -uroot -pfuckdba  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



  MySQL服務器所支持的最大連接數是有上限的,因為每個連接的建立都會消耗內存,因此我們希望客戶端在連接到MySQL Server處理完相應的操作后,應該斷開連接并釋放占用的內存。如果你的MySQL Server有大量的閑置連接,他們不僅會白白消耗內存,而且如果連接一直在累加而不斷開,最終肯定會達到MySQL Server的連接上限數,這會報'too many connections'的錯誤。對于wait_timeout的值設定,應該根據系統的運行情況來判斷。在系統運行一段時間后,可以通過show processlist命令查看當前系統的連接狀態,如果發現有大量的sleep狀態的連接進程,則說明該參數設置的過大,可以進行適當的調整小些。


讓那些mysql里睡覺的進程,悄悄的死去吧。


經查詢發現原來mysql沒有進行過優化,還是原來的默認值:28800(即8個小時)

編輯 /etc/my.cnf,在mysqld 下 新增 timeout參數,設置為120秒,如下:

【mysqld】

wait_timeout=120

interactive_timeout=120


注意:要同時設置interactive_timeout和wait_timeout才會生效。


經過測試服測試完全沒問題,重啟一下mysql 生效 即可!當然線上的就比較坑了,由于服務器第一天租到,第二天就開始上線沒來得及優化,很多臺里面只有一條,執行命令比較慢,就等著下次替換文件重啟了。


向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

永仁县| 乡城县| 武乡县| 迭部县| 苗栗市| 沙洋县| 威海市| 崇文区| 日土县| 南召县| 榆树市| 施秉县| 横峰县| 资讯| 定南县| 裕民县| 根河市| 绥棱县| 正镶白旗| 肇源县| 绥中县| 沧源| 梅州市| 三亚市| 水富县| 榆林市| 咸宁市| 永修县| 久治县| 连城县| 兴海县| 库伦旗| 龙川县| 本溪| 怀远县| 霞浦县| 崇州市| 申扎县| 托克托县| 海兴县| 固阳县|