天天看點

mysql備份報錯:mysqldump: Couldn't execute 'SHOW FUNCTION STATUS

在對資料庫進行備份的時候出現這樣的報錯,如下

mysqldump: Couldn't execute 'SHOW FUNCTION STATUS WHERE Db = 'abc'': Cannot load from mysql.proc. The table is probably corrupted (1548)

備份語句為:

mysqldump -uadmin -pyh3yxyZ -h10.28.67.106 -P3306 --skip-opt --create-options --single-transaction -R --events --triggers --disable-keys -q -e -c --default-character-set=utf8 --master-data=2 -B abc

因為備份是用的備份專用帳号,初看感覺像是目前備份的使用者不能查詢mysql.proc表,以為是權限問題,但是換成root使用者備份的時候還是報同樣的錯誤。

登陸資料庫,

>SHOW FUNCTION STATUS WHERE Db = 'abc';

ERROR 1548 (HY000): Cannot load from mysql.proc. The table is probably corrupted

在網上搜尋後發現是資料庫從5.1更新到5.5的常見問題,隻需要執行

mysql_upgrade指令即可

本文轉自 emma_cql 51CTO部落格,原文連結:http://blog.51cto.com/chenql/1731680