有一台數據庫,24核,32G內存,內存 mysql進程使用到 22%多,cpu使用到200%多
正常負載在2.多 ,怎么查看數據庫占用cpu和內存比較大的原因
排查方案:
1.show full processlist 可以查看目前有那些耗時的進程
2.用pt-query-digest 去分析下慢查詢日志,處理了一些sql語句
3.分析下這些語句,想想是不是有可能是外部業務導致的,比如爬蟲爬取頁面導致,或者任務計划卡死,這些SQL要統計出來,然后拿給研發看。
4.mysql5.7的話performance_schema下面有memory相關的表,可以看下內存的情況
5.看看bufferpool和instance這兩個參數的值
6.mpstat -P ALL 5 檢測每個cup使用情況
解決方案:
處理了一些慢sql語句后cpu已經下到 100% 多點 ,內存還在22%多