mysql.proc stürzt immer wieder ab, kann kein mysqldump ausgeführt werden?

9

Aufgrund einiger Probleme mit InnoDB werde ich alle Datenbanken auf einem neuen Server sichern:

mysqldump -E -R --all-databases | pv -b | mysql -u root -p -h new.server          

Der Dump-Prozess wurde mit einem Fehler gestoppt:

59.9kB assword: 59.9kB 
ERROR 145 (HY000) at line 2970: Table './mysql/proc' is marked as crashed and should 
    be repaired
 228MB 
mysqldump: Got errno 32 on write

Ich habe den folgenden Befehl ausgeführt, um alle Tabellen in allen Datenbanken zu reparieren:

mysqlcheck --auto-repair --all-databases

Wenn ich den mysql.procStatus überprüfe , erhalte ich:

mysql> check table mysql.proc;
+------------+-------+----------+----------+
| Table      | Op    | Msg_type | Msg_text |
+------------+-------+----------+----------+
| mysql.proc | check | status   | OK       |
+------------+-------+----------+----------+
1 row in set (0.02 sec)

Beim erneuten Ausführen des mysqldumpBefehls wird jedoch immer noch der gleiche Fehler angezeigt.

Ich habe ungefähr 2000 Geschäftsabläufe. Kann das der Grund für den Fehler sein?

Quanten
quelle
2
Haben Sie das Ziel auch repariert?
Philᵀᴹ
Was ist 59.9kB assword: 59.9kB? Ist das tatsächlich Teil der Fehlermeldung?
Max Vernon
@ Quanta fertig ...
Philᵀᴹ
@MaxVernon: Es handelt sich um eine Datenleitung über, pvbevor das Kennwort auf dem Zielhost eingegeben wird .
Quanten

Antworten:

3

Dieser Fehler:

FEHLER 145 (HY000) in Zeile 2970: Tabelle './mysql/proc' ist als abgestürzt markiert und sollte repariert werden. 228 MB mysqldump: Beim Schreiben wurde Fehler 32 angezeigt

... deutet darauf hin, dass das Problem beim Schreiben und nicht beim Lesen liegt. Führen Sie daher eine Reparatur in der Zieldatenbank durch.

Philᵀᴹ
quelle
8

Ich hatte gerade das gleiche Problem, dies wurde durch Ausgabe eines Befehls behoben, vorausgesetzt, das MySQL-Datenverzeichnis befindet sich in / var / lib / mysql / mysql

myisamchk -q -r / var / lib / mysql / mysql / proc

Quelle: http://dev.mysql.com/doc/refman/5.0/en/myisam-repair.html

Marshall Mathers
quelle
Obwohl die akzeptierte Antwort bereits besagt, dass Sie dies tun sollen, haben Sie tatsächlich gezeigt, wie. +1 !!!
RolandoMySQLDBA