Defekte MySQL-Tabellen (MyISAM) reparieren

Sollte der Linux-Server einmal nicht mehr reagieren/funktionieren, und auch nicht mehr per SSH (auch Remote) erreichbar sein, dann hilft leider meist nur noch ein harter Reset.
Das hat oft zur Folge dass einige MySQL-Tabelle der MyISAM-Engine Fehler enthalten. Man erkennt es an der Meldung „Table ‚xxxxx‘ is marked as crashed and should be repaired“.

Mit folgendem Befehl lassen sich alle Tabellen nach so einem Crash prüfen und ggf. reparieren:

for i in `find /var/lib/mysql/ -type f -name *.MYI`; do myisamchk --recover --force --update-state ${i}; done

/var/lib/mysql/“ ist dabei das Verzeichnis in dem sich die ganzen Tabellen befinden.
In „-name *.MYI“ kann man die zu prüfenden Tabellen ggf. noch eingrenzen. Zum Bespiel: „-name tabelle*.MYI

Solltest Du noch nicht ganz fit mit MySQL sein, dann hilft Dir vielleicht das MySQL-Online-Seminar von Punkt-Akademie.de weiter.

MySQL: Das umfassende Handbuch
1 Star2 Stars3 Stars4 Stars5 Stars (1 Bewertungen, Ø: 5,00 von 5)

Ersten Kommentar schreiben

Antworten

Jeder freigeschaltete Kommentar erhält einen DoFollow-Link.
Wir schalten aber nur Kommentare frei, die auch wirklich welche sind und/oder den Artikel sinnvoll bereichern oder ergänzen. Also gebt euch ein wenig Mühe :)


*