mysql lastet vServer aus

In den vergangenen 4 Tagen war mein Server und damit auch einige Projekte kaum zu erreichen. Nach hin und her mit meinem Dienstleister, der mir auch erfreulicherweise den Weg zur Fehlerlösung ebnete, habe ich mich also heute auf die Suche nach dem Fehler gemacht.

Er sollte wohl etwas mit mysql zu tun haben, erfuhr ich in einer mail. Auch im Virtuozzo lag der CPU-Verbrauch des mysql-Dienstes bei 40% (Tendenz steigend) – die Auslastung der CPU des vServers lag derweil bei ca. 2700%. Nach einem Stopp des mysql war alles ok – nur liefen halt die Projekte und mein Blog nicht ;P

Nach wiederholtem Neustart und überprüfen der Projekte habe ich mal in die mysql.log geschaut (hätte ich viel eher machen sollen) und stellte fest, dass wohl eine Tabelle kaputt ist. Unter “Prozesse” (erreichbar über Interface wie phpmyadmin oder ähnlichem oder eben Konsole) zeichnete sich ein klares Bild ab – eine Tabellenabfrage (keine besonders große mit joins oder sowas) wurde einfach nicht beendet und blieb ewig offen. Die CPU-Last stieg und stieg witer an..

Lange Rede kurzer Sinn: Ich habe die fehlerhaften Tabellen (bei mir waren es wp_comments und wp_postmeta) per REPAIR mal reparieren lassen. In der Auswertung wurden auch fehlerhafte Sektoren erkannt und gefixed. Nun läuft wieder alles einwandfrei und ich weiß nächstes Mal wo ich anfange zu suchen.

6 Kommentare

  1. Kai November 13, 2010 4:11   Antworten

    Hatte genau das gleiche Problem. Dank deines Beitrages konnte ich es recht schnell lösen. Vielen Dank!

  2. VServer November 11, 2009 1:58   Antworten

    Verstehe ich jetzt ehrlich gesagt nicht wirklich, was sollen die SELECT * Abfragen damit zu tun haben?
    Ich habe den Tip von mediavrog nun auch auf meinem VServer ausprobiert, dies konnte bei mir jedoch leider keine Abhilfe schaffen.
    Nach einem Gespräch mit meinem Hoster hat der sich dem jedoch angenommen und konnte dies erfolgreich erledigen.

    Lg

  3. Server Mai 1, 2009 11:33   Antworten

    Vielleicht solltet Ihr als erstes überprüfen ob Ihr evt. alle Querys mit dem guten alten SELECT * macht – wenn ja – kein Wunder das mysql abschmiert. Optimiert die Querys und Normalisiert die Tables.

  4. Server Mai 12, 2008 2:30   Antworten

    danke für den Tip. Hat super funktioniert. Bin ich froh das wieder alles ordentlich läuft.
    Nochmals vielen vielen Dank.

  5. mediavrog
    mediavrog Mai 10, 2008 11:42   Antworten

    Hey Server,

    wenn das Reparieren nichts bringt, versuch mal einen Dump der Daten jeder Tabelle zu ziehen und Tabelle für Tabelle zu löschen und mit dem Dump wieder einzuspielen.
    Da müssten nach meinem Verständnis eigentlich alle Sektoren wieder “frisch” sein und du hättest nur minimale Ausfallzeiten in kleinen Bereichen der DB, wenn du Tabelle für Tabelle ersetzt.

    Falls immer wieder in kurzer Zeit neue fehlerhafte Sektoren entstehen, dann evtl. den DB Server wechseln.

    Grüße
    Maik

  6. Server Mai 9, 2008 10:28   Antworten

    Ich habe anscheint dasselbe Problem mit meinem vServer. Jedoch bringt bei mir das reparieren der Tabellen nichts. Bei meiner Auswertung wurden ebenfalls fehlerhafte Sektoren festgestellt. Auch bei dem zweiten und dritten Reparaturversuch wurden immer wieder neue fehlerhafte Sektoren gefunden. Hat einer Ahnung was ich tun kann? Ich muss den Server unbedingt lauffähig halten.

Einen Kommentar hinterlassen