快速升级MySQL系统表


  本文标签:MySQL 升级 系统表

  一些MySQL发布对MySQL数据库中的系统表的结构进行了更改,添加了新权限或特性  。当你更新到新版本MySQL,你应同时更新系统表,以确保它们的结构最新  。首先备份mysql数据库,然后按照下面的程序操作  。

  在Unix或Unix类系统中,运行mysql_fix_privilege_tables脚本来更新系统表:

  
shell> mysql_fix_privilege_tables

  你必须在服务器运行时执行该脚本  。它试图连接本机上用root运行的服务器  。如果root账户需要密码,在命令行中按下述方法给出密码:

  
shell> mysql_fix_privilege_tables--password=root_password

  mysql_fix_privilege_tables脚本可以执行将系统表转换为当前格式的任何动作  。运行时你可能会看见一些Duplicate column name警告;你可以忽略它们  。

  运行完脚本后,停止服务器并重启  。

  在Windows系统中,MySQL分发包括mysql_fix_privilege_tables.sql SQL脚本,你可以用mysql客户端来运行  。例如,如果MySQL安装到C:\Program Files\MySQL\MySQL Server 5.1,命令应为:

  

  C:\>
C:\Program Files\MySQL\MySQL Server 5.1

  \bin\mysql -u root -p mysql

  mysql> SOURCE C:/Program Files/MySQL/MySQL Server

  5.1/scripts/mysql_fix_privilege_tables.sql

  如果安装到其它目录,相应地更改路径名  。

  mysql命令将提示输入root密码;按照提示输入密码  。

  在Unix中,当mysql处理mysql_fix_privilege_tables.sql script脚本中的语句时,你可能会看见一些Duplicate column name警告;你可以忽略它们  。

  运行完脚本后,停止服务器并重启  。