MySQL 總是被 OOM killer 砍了?

2017/02/18
~ 阿亮 ~

最近主機升為 Ubuntu16, 發現 mysql 一直被 OOM killer 砍掉,經過許久的測試才終於調出不被砍的 mysqld 設定。

簡單結論就是:不要傻傻地依 mysqltuner 建議拉高設定給 mysqld (ex. innodb_buffer_pool_size),雖然看起來 RAM 很夠給用,OOM killer 不知為何,我覺得 OOM killer 似乎沒考慮 buff/cache/swap 的量,只考慮 free 的樣子… 只要 free 持續在低量,mysqld 就會被砍了… 降低這些設定就能減少被砍的機率。

我另外有參考這篇的做法 ,觀注 RAM free 的大小,只要它小於 1.5G 時,就 trigger OS 將 cache 釋出.. PHP script 做法如下 (需要在 root 下執行)

$qFree = intval(shell_exec(“free -m|head -n2|tail -n1|awk ‘{print $4}'”));
if ($qFree<1500)
{
system(“echo 3 > /proc/sys/vm/drop_caches”);
}



站內搜尋



本站其他服務

本站其他軟體



  • 國道一路通(FreeWay)

    打開定位即實際地圖上繪製所在地中心附近的車況圖,可縮放地圖,不再是小小的縮小圖,快速了解高速公路的路況。


  • 下一台單車(NextBike)

    打開定位即搜尋附近二十點自行車站點,不塞滿全部站點資料到整個地圖上,所以畫面簡潔方便看清楚目前所在地,若需要搜尋地圖其他位置附近站點,再點擊地圖即可。


  • 下一班火車 (nextRail)

    這個 app 只要開啟後,就根據定位幫你過濾出最近火車站的時刻表,不用再按任何按鈕了,方便您在很快時間內確定要坐的哪一班火車


  • 條碼掃描器(QRCode)

    支援 QRCode and Barcodes、可連續快速掃描、自動對焦、可打開手電筒供掃描時使用


  • 下一班高鐵 (nextTHSR)

    這個 app 只要開啟後,就根據定位幫你過濾出最近高鐵站的時刻表,不用再按任何按鈕了,方便您在很快時間內確定要坐的哪一班高鐵


  • 下一班公車(nextBus)

    這個 app 只要開啟後,就根據定位幫你過濾出附近站牌的時刻表,以及提供相關公車預計到站的時間,方便您在很快時間內確定要坐的哪一班公車