1 個 MYSQLD 程序的 CPU 使用率較高,但執行 SHOW FULL PROCESSLIST 時沒有例外查詢

1 個 MYSQLD 程序的 CPU 使用率較高,但執行 SHOW FULL PROCESSLIST 時沒有例外查詢

我有一個問題,其中 2 個進程佔用了 99% 的 CPU,但這使得 mysqld 進程佔用了 600% 的 CPU,而一組 php-fpm 進程根據 top 佔用的 CPU 不超過 25%( 2 個進程處於活動狀態,603 個進程處於休眠狀態,其中一個是mysqld,另一個似乎是php-fpm,因此它不是來自太多客戶端),所以我想知道什麼可能會導致CPU 使用率高,因為執行SHOW FULL PROCESSLIST只給我一些SELECT 指令,如2 或3,沒有任何異常,我該如何找出問題所在?有人告訴我這是 rsync 進程,但 rsync 進程應該只佔用大量 IO 並且沒有 CPU 使用率,問題是當只有 2 個進程時 CPU 處於 99%,並且執行 SHOW FULL PROCESSLIST 並不能揭示原因CPU佔用率如此之高,那麼如何調試呢?是否有一個命令允許您檢查過去的 MYSQL 查詢,因為我被告知如果有轉儲到 MYSQL,那麼當我運行 SHOW FULL PROCESSLIST 時它不會出現,所以我想知道是否有一種方法可以檢查所有查詢最近才完成的。

相關內容