可视化mysql数据库管理工具Navicat的1577错误解决
由 eming 撰写
http://tuibian.com/?p=823
今天尝试使用了Windows下的可视化mysql数据库管理工具front,界面清爽,易操作上手,感觉还不错。
不过当连接上mysql后,无论打开任何一个数据库,都会提示:1577 – Cannot proceed because system tables used by Event Scheduler where found damaged at server start,按照提示的说法是系统表损坏,但没有理由全部都损坏吧。
于是上网查些相关信息,但比较失望,没有实际的解决方案。经过一番折腾,在mysql中文手册里发现一些信息,原来是从mysql5.1版本开始,系统表的结构进行了很大的调整,必须要进行升级系统表结构才能正常使用。
然后在Navicat的官方网站上找到了一段信息:Please try to update your system table and to see if it solves your problem. mysql_upgrade is stored in the "bin" folder under the MySQL server installation path.
意思是在mysql下的bin目录里运行mysql_upgrade程序升级更新系统表以解决问题。我使用的是APMserv5.2.6集成PHP环境搭建的平台,选择使用的是mysql5.1版本。但在mysql5.1中的bin目录里却并没有发现mysql_upgrade这个文件,看来是APMserv作者作了相应的精简。
最后只好去mysql官方站下载了对应的zip包,从中提取相应文件后运行,问题得到了解决。
最后总结一下问题解决方法:
1、将mysql_upgrade.exe和mysqlcheck.exe两个文件复制到 APMServ5.2.6\MySQL5.1\bin目录下。
2、开始->运行->输入cmd回车,在操作提示符下输入 E:\APMServ5.2.6\MySQL5.1\bin\mysql_upgrade -u root 然后回车,待运行完之后关闭DOS窗口。(将其中的E:\APMserv5.2.6改成你自己实际安装的目录即可)
3、停止APMserv后再重新启动APMserv一次,问题即可解决。
==========================================================
执行 mysql_update 时,MySQL服务器必须运行着,它有以下几个参数:
–help
显示帮助信息并且退出
–basedir=path
设定MySQL的安装路径
–datadir=path
设定MySQL的数据文件路径
–force
告诉 mysql_update,在检查时忽略是否存在 mysql_upgrade.info 文件,强行检查该版本的MySQL数据表,不管是否已经检查过了
–user=user_name, -u user_name
连接到MySQL的用户名,默认是 root
–verbose
冗余模式。发生问题时打印出更多的信息
其他的选项诸如 –password[=password] 是要传递给 mysqlcheck 和 mysql_fix_privilege_tables 脚本的,并不是必须的。