2016年5月11日 星期三

Troubleshooting: 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

Orignal From: Troubleshooting: MySQL 升級後資料表損壞 The table is probably corrupted

沒有留言:

張貼留言