mysql.proc продовжує збої, не можете зробити mysqldump?


9

Через деякі проблеми з InnoDB, я збираюся скинути всі бази даних на новий сервер:

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

Процес скидання припинився з помилкою:

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

Я виконав таку команду, щоб відновити всі таблиці у всіх базах даних:

mysqlcheck --auto-repair --all-databases

Перевіряючи mysql.procстатус, я отримую:

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

Однак я все-таки отримую ту ж помилку при повторному запуску mysqldumpкоманди.

У мене є приблизно 2000 процедур магазину. Чи може це бути причиною помилки?


2
Ви також відремонтували місце призначення?
Philᵀᴹ

Що таке 59.9kB assword: 59.9kB? Це насправді частина повідомлення про помилку?
Макс Вернон

@quanta done ...
Philᵀᴹ

@MaxVernon: це фрагмент передачі даних, pvперш ніж вводити пароль на хості призначення.
кванта

Відповіді:


3

Ця помилка:

ПОМИЛКА 145 (HY000) у рядку 2970: Таблиця './mysql/proc' позначена як збій і її слід відремонтувати 228MB mysqldump: Отримав помилку 32 на записі

... говорить про те, що проблема полягає у написанні не читання, тому виконайте ремонт у базі даних призначення.


8

У мене просто була така ж проблема, це було виправлено видаванням команди, припускаючи, що дані dirq mysql увімкнено / var / lib / mysql / mysql

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

Джерело: http://dev.mysql.com/doc/refman/5.0/en/myisam-repair.html


Хоча прийнята відповідь вже говорить про це, ви насправді показали, як це зробити. +1 !!!
RolandoMySQLDBA
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.