一:从版本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 root@172.16.98.2 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 mysql@localhost 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