Home  >  Article  >  Database  >  将MySQL从旧的版本升级为新的版本_MySQL

将MySQL从旧的版本升级为新的版本_MySQL

WBOY
WBOYOriginal
2016-06-01 14:04:37882browse
 

一:从版本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服务

 

 

<ccid_code></ccid_code>#/www/mysql/bin/mysqladmin shutdown

 

2:备份数据文件

 

 

<ccid_code></ccid_code>#cp –R /www/mysql/ /www/backup/

 

使用mysqldump命令备份

 

 

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

 

 

 

删除原有MySQL安装

 

<ccid_code></ccid_code>#rm –R /www/mysql

 

 

 

3: 安装MySQL4.1

 

创建用户:

 

 

<ccid_code></ccid_code>#/usr/sbin/groupadd –g 201 mysql

 

创建用户

 

 

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

 

 

 

 

设置用户密码:

 

<ccid_code></ccid_code>#passwd mysql #设置为mysql

 

 

 

解压缩安装包

 

<ccid_code></ccid_code>#tar –zxvf mysql-standard
-4.1.4-gamma-pc-linux-i686.tar.gz

 

 

复制文件到MySQL安装位置

 

<ccid_code></ccid_code>#cp mysql-standard-4.1.4-gamma-pc-linux-i686
 /usr/local/mysql

 

 

修改目录权限

 

<ccid_code></ccid_code>#chown mysql.mysql /usr/local/mysql –R

 

 

测试是否能够启动

 

<ccid_code></ccid_code>#/usr/local/mysql/bin/mysqld_safe &

 

 

修改启动文件rc.local

 

<ccid_code></ccid_code>/usr/local/mysql/bin/mysqld_safe &

 

 

修改profile文件,以便于mysql命令执行

 

<ccid_code></ccid_code>PATH=$PATH: /usr/local/mysql/bin

 

 

设置mysql密码,如置密码为空,可不执行

 

<ccid_code></ccid_code>#mysqladmin –u root password

 

 

增加MySQL用户

 

<ccid_code></ccid_code>#mysql –u root –p

 

 

创建用于本地管理的用户

 

<ccid_code></ccid_code>#> 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”;

 

 

 

 

创建用于备份恢复的用户

 

<ccid_code></ccid_code>#> 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作为备份/恢复用户

 

 

 

刷新表

 

<ccid_code></ccid_code>#mysqladmin -u root -p reload
#mysqladmin -u root -p flush-privileges

 

 

 

4: 恢复备份数据库

 

分别创建数据库songliDB、demo

使用mysql数据库用户恢复备份

 

<ccid_code></ccid_code>#./mysql -u mysql -p mvnforum 
            
Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn