10

Due to some problems with InnoDB, I'm going to dump all databases to a new server:

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

The dump process stopped with error:

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

I've ran the following command to repair all tables in all databases:

mysqlcheck --auto-repair --all-databases

When I examine the mysql.proc status, I get:

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

However, I still get the same error when re-running the mysqldump command.

I have approximately 2000 store procedures. Can that be the reason for the error?

0

2 Answers 2

3

This error:

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

... suggests that the problem is writing not reading, so do a repair on the destination database.

0
8

I just had the same problem, this was fixed by issuing a command, assuming mysql data dir is on /var/lib/mysql/mysql

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

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

0

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.