BACKWPUP插件warning-cannot-load-from-mysqlproc-the-table-is-probably-corrupt
WAARSCHUWING: Databasefout Cannot load from mysql.proc.
这个警告有多严重?可以做什么来解决呢?
这是由于不同MySQL服务器版本所需的模式更改。解决这个问题的简单方法是从命令行运行mysql_upgrade命令。
关于mysql_upgrade
mysql_upgrade检查所有数据库中的所有表与当前版本的MySQL服务器不兼容。mysql_upgrade还升级系统表,以便可以利用可能已添加的新特权或功能。
mysql_upgrade应该在每次升级MySQL时执行。它取代了较旧的mysql_fix_privilege_tables脚本,它不应再使用。
mysql_upgrade执行以下命令来检查和修复表以及升级系统表:
mysqlcheck --all-databases --check-upgrade --auto-repair
mysql < fix_priv_tables
从命令行运行mysql_upgrade
要使用mysql_upgrade,请确保MySQL服务器正在运行,然后从命令行工具调用mysql_upgrade:
mysql_upgrade -uroot -p --force
然后应提示你输入MySQL root的密码,并且mysql_upgrade将检查所有数据库和表,并在适当的地方进行修复。
如果不在shell的搜索路径中,你可能需要指定上述命令的完整路径。
在Debian 6上,应该在:
/usr/bin/mysql_upgrade -uroot -p --force
在Mac的MAMP上,默认路径是:
/Applications/MAMP/Library/bin/mysql_upgrade -uroot -p --force
在Windows上,将安装MySQL并包含在bin子目录中。默认情况下,它应位于:
"C:\Program Files\MySQL\MySQL Server\[*CHANGE TO MySQL SERVER*]\bin\mysqladmin" -u root shutdown
完成!
运行mysql_upgrade后,停止服务器并重新启动它,以确保对系统表所做的任何更改生效。
所有检查和修复的表都标有当前MySQL版本号。这确保下次在服务器的相同版本上运行mysql_upgrade时,它可以告诉是否需要再次检查或修复表。