Description:
While upgrading mysql, mysql_upgrade fails on the following tables:
Repairing tables
mysql.help_category
Error : Incorrect information in file: './mysql/help_category.frm'
error : Corrupt
mysql.help_keyword
Error : Incorrect information in file: './mysql/help_keyword.frm'
error : Corrupt
mysql.help_topic
Error : Incorrect information in file: './mysql/help_topic.frm'
error : Corrupt
mysql.proc
Error : Incorrect information in file: './mysql/proc.frm'
error : Corrupt
mysql.time_zone_name
Error : Incorrect information in file: './mysql/time_zone_name.frm'
error : Corrupt
Running 'mysql_fix_privilege_tables'...
ERROR 1033 (HY000) at line 315: Incorrect information in file: './mysql/help_category.frm'
ERROR 1033 (HY000) at line 316: Incorrect information in file: './mysql/help_keyword.frm'
ERROR 1033 (HY000) at line 321: Incorrect information in file: './mysql/time_zone_name.frm'
ERROR 1033 (HY000) at line 326: Incorrect information in file: './mysql/help_topic.frm'
ERROR 1033 (HY000) at line 474: Incorrect information in file: './mysql/proc.frm'
ERROR 1033 (HY000) at line 521: Incorrect information in file: './mysql/proc.frm'
ERROR 1033 (HY000) at line 523: Incorrect information in file: './mysql/proc.frm'
ERROR 1033 (HY000) at line 530: Incorrect information in file: './mysql/proc.frm'
ERROR 1033 (HY000) at line 533: Incorrect information in file: './mysql/proc.frm'
ERROR 1033 (HY000) at line 536: Incorrect information in file: './mysql/proc.frm'
ERROR 1033 (HY000) at line 539: Incorrect information in file: './mysql/proc.frm'
ERROR 1033 (HY000) at line 542: Incorrect information in file: './mysql/proc.frm'
ERROR 1033 (HY000) at line 545: Incorrect information in file: './mysql/proc.frm'
ERROR 1033 (HY000) at line 548: Incorrect information in file: './mysql/proc.frm'
ERROR 1033 (HY000) at line 550: Incorrect information in file: './mysql/proc.frm'
FATAL ERROR: Upgrade failed
Consequence of failure seems to be that the following fails:
mysql> SELECT ADDDATE(CUR_DATE(),INTERVAL 1 DAY);
090526 20:40:11 [ERROR] mysqld: Incorrect information in file: './mysql/proc.frm'
ERROR 1033 (HY000): Incorrect information in file: './mysql/proc.frm'
How to repeat:
Previous version was a 5.1.31 version.
Upgrade scenario:
5.1.31 -> 6.0.10 -> problem with mysql -> downgrade to 5.4.0 -> Other problems -> message from mysql solving the 6.0.10 problem -> back to 6.0.10 -> ran the mysql_upgrade program.
Re-running the program, repeats the error. If required I can upload the proc.frm file.
Suggested fix:
Replace the mysql/*frm tables where possible instead of upgrading them. This should precent this failure.