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

2016-05-11 MySQL, 茶包專欄

這幾天在測試 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

給 Mr. 沙先生一點建議

彙整

分類

展開全部 | 收合全部

License

訂閱 Mr. 沙先生 的文章

輸入你的 email 用於訂閱