MySQL旧版本升级为新版本

Tags: mysql

一:从版本3.23升级到4.10
4.10新特性:支持事务处理和存储过程


升级过程的注意事项:

1:升级采用直接复制安装文件的方法,简单实用,但要注意相关的配置更改; 2:直接复制备份的数据库不能通过复制的方法恢复,因此须采用mysqldump方法备份; 3:mysql4.1的用户管理与3.23有所不同,user表中增加了字段max_questions、max_updates、 max_connections,可以对不同的mysql用户进行不同设置,如果是备份/恢复用户就可以将max_questions、max_updates设置大些,具体设置值根据数据库的实际情况而定。

升级步骤:

1: 停止当前MySQL服务

#/www/mysql/bin/mysqladmin shutdown


2:备份数据文件

#cp –R /www/mysql/ /www/backup/


使用mysqldump命令备份

#mysqldump mvnforum > /www /backup/mvnforum.sql #mysqldump demo > /www/backup/demo.sql

 


删除原有MySQL安装 #rm –R /www/mysql

 


3: 安装MySQL4.1

创建用户:

#/usr/sbin/groupadd –g 201 mysql


创建用户

#/usr/sbin/useradd -u 1001 -g mysql -d /www/mysql -m -s /bin/ tcsh -c "MySQL Administrator" mysql

 

 

设置用户密码: #passwd mysql #设置为mysql

 


解压缩安装包 #tar –zxvf mysql-standard -4.1.4-gamma-pc-linux-i686.tar.gz

 

复制文件到MySQL安装位置 #cp mysql-standard-4.1.4-gamma-pc-linux-i686 /usr/local/mysql

 

修改目录权限 #chown mysql.mysql /usr/local/mysql –R

 

测试是否能够启动 #/usr/local/mysql/bin/mysqld_safe &

 

修改启动文件rc.local /usr/local/mysql/bin/mysqld_safe &

 

修改profile文件,以便于mysql命令执行 PATH=$PATH: /usr/local/mysql/bin

 

设置mysql密码,如置密码为空,可不执行 #mysqladmin –u root password

增加MySQL用户 #mysql –u root –p

 

创建用于本地管理的用户 #> GRANT USAGE ON *.* TO IDENTIFIED BY ; #>update user set Select_priv=Y, Insert_priv=Y,Update_priv=Y, Delete_priv=Y,Create_priv=Y, Drop_priv=Y,Reload_priv=Y, _priv=Y,Process_priv=Y, File_priv=Y,Grant_priv =Y, References_priv=Y,Index_priv=Y, Alter_priv=Y,Show_db_priv=Y, Super_priv=Y,Create_tmp_table_priv=Y, Lock_tables_priv=Y, Execute_priv=Y,Repl_slave_priv=Y, Repl_client_priv=Y where Host=172.16.98.2 and User=root; #>update user set max_questions=30000, max_updates=30000 where User=”root”;

 

 

创建用于备份恢复的用户 #> GRANT USAGE ON *.* TO IDENTIFIED BY ; #>update user set Select_priv=Y, Insert_priv=Y, Update_priv=Y,Delete_priv=Y, Create_priv=Y,Drop_priv=Y,Reload_priv=Y, Shutdown_priv=Y,Process_priv=Y,File_priv=Y, Grant_priv =Y, References_priv=Y,Index_priv=Y, Alter_priv=Y, Show_db_priv=Y,Super_priv=Y,Create_tmp_table_priv=Y, Lock_tables_priv=Y,Execute_priv=Y,Repl_slave_priv=Y, Repl_client_priv=Y where Host=localhost and User=mysql; #>update user set max_questions=3000000, max_updates=3000000 where user=”mysql”; //mysql作为备份/恢复用户

 


刷新表 #mysqladmin -u root -p reload #mysqladmin -u root -p flush-privileges

 


4: 恢复备份数据库

分别创建数据库songliDB、demo 使用mysql数据库用户恢复备份

#./mysql -u mysql -p mvnforum < /www/backup/mvnforum.sql

#./mysql -u mysql -p demo < /www/backup/demo.sql

本文链接:http://www.4byte.cn/learning/102861.html