Lorama: mysqld 100% CPU

Hi,

auf einem lokalen Server, der sowohl Apache, als auch MySQL beherbergt, sind derzeit jede Menge "sleep"-Prozesse online und es scheinen immer mehr zu werden.
Zwar sehe ich in der Processlist, welche User/DB aktiv sind. Allerdings bräuchte ich noch weitere Infos, welche der vielen PHP-Scripte der Nutzer des Servers gerade verbunden sind.
Gibt es eine Möglichkeit, das auflisten zu lassen?

Freue mich auf Tipps

  1. Hi!

    Zwar sehe ich in der Processlist, welche User/DB aktiv sind. Allerdings bräuchte ich noch weitere Infos, welche der vielen PHP-Scripte der Nutzer des Servers gerade verbunden sind.
    Gibt es eine Möglichkeit, das auflisten zu lassen?

    Woher eine Verbindung kommt, weiß MySQL nicht. Du könntest höchstens mit eindeutigen Kennungen je Anwendung oder den verwendeten Datenbanken Rückschlüsse auf die Verursacher vermuten.

    Welche Prozesse allgemein auf dem Unix-System laufen, sagt ps, für Windows der Taskmanager.

    Lo!

    1. Moin

      auch ps liefert nur die Namen der Prozesse und lässt keine konkreten Rückschlüsse darauf zu, welches der User Scripts diesen Prozess nutzt. Hat Apache kein Modul um sowas wie einen top oder ps für "Apache-Angelegenheiten" anzuzeigen?

      Gruß

      1. Hi!

        auch ps liefert nur die Namen der Prozesse und lässt keine konkreten Rückschlüsse darauf zu, welches der User Scripts diesen Prozess nutzt. Hat Apache kein Modul um sowas wie einen top oder ps für "Apache-Angelegenheiten" anzuzeigen?

        Apache hat den Handler server-status, der zu aktuell laufenden Dingen Auskunft geben kann. Das ist oftmals zwar vorbereitet aber deaktivert und auf den localhost eingeschränkt. Suche in der Apache-Konfiguration nach SetHandler server-status. Manchmal ist es so vorbereitet, dass man den Apachen mit einem (weiteren) Aufrufparameter starten soll, manchmal muss man es entkommentieren. Zudem gibt es noch die Direktive ExtendedStatus On/Off, die das Anzeigeergebnis beeinflusst.

        Dir fehlt dann aber noch das Bindeglied zwischen den MySQL-Prozessen und denen vom Apachen. Die laufen in verschiedenen Prozessen und kommunizieren nur miteinander. Mir ist nicht bekannt, dass sie dabei ihre PID austauschen würden - wozu auch.

        Lo!