Site icon Mr. 沙先生

茶包專欄 MySQL 升級後資料表損壞 The table is probably corrupted

這幾天在測試 MySQL,從 5.1 升級到 5.5.49 之後執行 mysqldump 出現錯誤訊息

ERROR 1548 (Test) at line 5: Cannot load from mysql.proc. The table is probably corrupted

 

訊息中告知無法讀取 mysql.proc,進到 Client 端 select mysql.proc 也是一樣的狀況

MySQL 官方的解釋是升級 MySQL 版本有可能造成 “資料表” 與 MySQL版本不相容,並且建議在每次升級 MySQL 後都應該執行 mysql_upgrade 進行升級確認

 

 

使用 mysql_upgrade 修復

$ mysql_upgrade -p

 

mysqlcheck 確認目前所有資料庫和表是否正常

$ mysqlcheck --all-databases -p

mysql.columns_priv                                 OK
mysql.db                                           OK
mysql.event                                        OK
...
...

 

 

 

Reference:

mysql_upgrade — Check Tables for MySQL Upgrade

mysqlcheck — A Table Maintenance Program

Exit mobile version