MyISAM Autorepair?

Bachsau

Member
So. Jetzt hat's bei meinem vServer heute den Host gecrasht, und einige meiner Tabellen natürlich mit. MySQLd hat diese dann auch gleich im Log angemahnt, ich solle sie mal reparieren. Aber als der MySQLd dann noch einmal neu gestartet wurde, waren die Meldungen weg. Jetzt stellt sich mir die Frage hat der oder Debian das automatisch in Ordnung gebracht, oder werden die Fehler einfach nur einmal angezeigt?
 
Debian startet bei jedem MySQL-Server-(Re)start ein Check-Script welches seine Ergebnisse an root mailed.
Kleinere Probleme werden dadurch sofort behoben. Größere überlässt es dann root.

Kleine Probleme sind z.B. dass die nicht geschlossenen Tabellen bei einem Crash i.d.R. als "need check" markiert sind. Wenn der Check durchläuft und keinen Fehler entdeckt hat, wird dieses Flag wieder gelöscht.

huschi.
 
MySQL gibt bei Debian ja auch beim (Re)start des Dienstes durch das Init-Script eine entsprechende Meldung:
~# /etc/init.d/mysql restart
Stopping MySQL database server: mysqld.
Starting MySQL database server: mysqld.
Checking for tables which need an upgrade, are corrupt or were not closed cleanly..
 
Debian startet bei jedem MySQL-Server-(Re)start ein Check-Script welches seine Ergebnisse an root mailed.
Wo steht das (im Script), dass er das mailed? Habe keine Mail bekommen.

Kleine Probleme sind z.B. dass die nicht geschlossenen Tabellen bei einem Crash i.d.R. als "need check" markiert sind. Wenn der Check durchläuft und keinen Fehler entdeckt hat, wird dieses Flag wieder gelöscht.
Dann wird es wohl so gelaufen sein. Das System stand nicht wirklich unter Last zum Zeitpunkt des Ausfalls.

MySQL gibt bei Debian ja auch beim (Re)start des Dienstes durch das Init-Script eine entsprechende Meldung.
Jupp, aber von reparieren steht da nix, deshalb die Frage. :)

Gruß,
Bachsau
 
Wo steht das (im Script), dass er das mailed?
Das init-Script ruft /etc/mysql/debian-start auf. Hier wird die Variable MYCHECK_RCPT mit "root" belegt. (Eine andere Adresse ist möglich.)
Dieses Script ruft dann einige Routinen aus /usr/share/mysql/debian-start.inc.sh auf. U.a. check_for_crashed_tables() welche seine Fehlermeldung an den o.g. RCPT sendet. Allerdings nur wenn ein Output entstanden und der Mail-Client mailx vorhanden ist.
Es gibt also keine Garantie, dass die Email wirklich auf jedem Debian-System raus geht.

huschi.
 
Denke dass das mit der Mail funktioniert hätte. mailx ist auch drauf und der root-Alias hat bislang auch funktioniert. Es gab wohl wirklich keine echten Probleme, sonst hätte er die Log-Meldung ja auch beim nächsten Start wiederholt, oder?
 
Back
Top