Hohe CPU-Auslastung durch einen Prozess, nämlich MYSQLD, aber keine abnormalen Abfragen bei der Ausführung von SHOW FULL PROCESSLIST

Hohe CPU-Auslastung durch einen Prozess, nämlich MYSQLD, aber keine abnormalen Abfragen bei der Ausführung von SHOW FULL PROCESSLIST

Ich habe ein Problem, bei dem 2 Prozesse 99 % der CPU beanspruchen, aber übrig bleiben der mysqld-Prozess, der 600 % der CPU beansprucht, und eine Reihe von php-fpm-Prozessen, die laut top nicht mehr als 25 % der CPU beanspruchen (2 Prozesse aktiv und 603 Prozesse schlafend, einer davon ist mysqld und der andere scheint ein php-fpm zu sein, es kommt also nicht von zu vielen Clients). Ich frage mich also, was die hohe CPU-Auslastung verursachen könnte, denn wenn ich SHOW FULL PROCESSLIST ausführe, erhalte ich nichts außer ein paar SELECT-Befehlen wie 2 oder 3 und nichts Ungewöhnliches. Wie finde ich heraus, was nicht stimmt? Mir wurde gesagt, es liege am rsync-Prozess, aber der rsync-Prozess sollte nur viel IO und keine CPU-Auslastung beanspruchen, und das Problem ist, dass die CPU bei 99 % ausgelastet ist, wenn nur 2 Prozesse aktiv sind, und SHOW FULL PROCESSLIST zeigt nicht, warum die CPU-Auslastung so hoch ist. Wie debuggt man das also? Gibt es einen Befehl, mit dem man frühere MySQL-Abfragen prüfen kann? Mir wurde nämlich gesagt, dass ein vorhandener Dump in MySQL nicht unbedingt angezeigt wird, wenn ich „SHOW FULL PROCESSLIST“ ausführe. Daher frage ich mich, ob es stattdessen eine Möglichkeit gibt, alle Abfragen zu prüfen, die kürzlich abgeschlossen wurden.

verwandte Informationen