升级mysql小记

按照常规升级mysql
1.简单步骤是,重新编译一个新的mysql在系统中,如/usr/local/mysql4.0.15a
2.把php也重新编译一下,–with-mysql=/usr/local/mysql4.0.15a
3.把系统中的mysql停止,停止apache服务,把原来的mysql的var拷贝为一个备份(以防万一)
4.编辑/etc/my.cnf,在mysqld部分加入datadir=/usr/local/mysal/var,也就是指定数据目录为原来的mysql的var目录
5.运行新的mysql,并且运行源码目录中script/mysql_fix_privilege_tables rootpasswd,升级mysql的一些权限和用户限制功能
6.停止mysql,cp原来的数据库到/usr/local/mysql4.0.15/var中,把/etc/my.cnf中的datadir去掉.重新启动mysql服务
7.手动编辑mysql数据库中user数据表中的对应用户Create_tmp_table_priv和Lock_tables_priv为N,]
这样用户就不能有show-database功能了(非用户的数据库)
否则用户能遍历你的数据库列表
8.最后flush privileges

注:mysql_fix_privilege_tables 参考:http://www.mysql.com/doc/en/Upgrading-grant-tables.html

系统说明:从mysql3.23—>mysql4.0.15