MySQL will sometimes return the error message “Cannot load from mysql.proc. The table is probably corrupted”. This happens due to schema changes required for different MySQL server versions. The simple fix to this problem is to run the mysql_upgrade command from the command line.
mysql_upgrade examines all tables across all databases for incompatibilities with the current version of MySQL Server. mysql_upgrade also upgrades the system tables so that you can take advantage of new privileges or capabilities that might have been added.
mysql_upgrade should be executed each time you upgrade MySQL. It supersedes the older mysql_fix_privilege_tables script, which should no longer be used.
mysql_upgrade executes the following commands to check and repair tables and to upgrade the system tables:
mysqlcheck --all-databases --check-upgrade --auto-repair
mysql < fix_priv_tables
Run mysql_upgrade From Command Line
To use mysql_upgrade, make sure your MySQL server is running and then invoke mysql_upgrade from the command line tool:
mysql_upgrade -uroot -p --force
You should then be prompted to enter the MySQL root's password and mysql_upgrade will check all the databases and tables and fix them where appropriate. You may need to specify the full path to the above command if it's not in the shell's search path.
On Debian 6 it should be loacted at:
/usr/bin/mysql_upgrade -uroot -p --force
On Mac's MAMP the default path is:
/Applications/MAMP/Library/bin/mysql_upgrade -uroot -p --force
On Windows it'll be where MySQL is installed and contained in the bin subdirectory. By default it should be located at:
"C:\Program Files\MySQL\MySQL Server\[*CHANGE TO MySQL SERVER*]\bin\mysqladmin" -u root shutdown
After running mysql_upgrade, stop the server and restart it so that any changes made to the system tables are ensured to take effect.
All checked and repaired tables are marked with the current MySQL version number. This ensures that next time you run mysql_upgrade with the same version of the server, it can tell whether there is any need to check or repair the table again.