当前位置: 首页 > 图文教程 > 数据库 > MYSQL > MySQL从旧的版本升级为新的版本全攻略

MYSQL
mysql "too many connections" 错误 之 mysql解决方法
MySQL: mysql is not running but lock exists 的解决方法
使用mysql中遇到的几个问题
MySQL一个索引最多有多少个列?真实的测试例子
MySQL里Create Index 能否创建主键 Primary Key
MySQL 创建索引(Create Index)的方法和语法结构及例子
MYSQL 优化常用方法
linux mysql 找回密码
mysql 动态执行存储过程语句
MySQL 查找价格最高的图书经销商的几种SQL语句
MySQL 客户端不输入用户名和密码直接连接数据库的2个方法
mysql 查询表中平均分最低的班级
mysql 左连接、右连接和内连接
Mysql LONGBLOB 类型存储二进制数据 (修改+调试+整理)
Mysql LONGTEXT 类型存储大文件(二进制也可以) (修改+调试+整理)
Mysql 插入中文及中文查询 (修改+调试)
mysql 数据表中查找重复记录
MySql .frm数据库文件导入的问题
解决hibernate+mysql写入数据库乱码
mySQL UNION运算符的默认规则研究

MYSQL 中的 MySQL从旧的版本升级为新的版本全攻略


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-17   浏览: 85 ::
收藏到网摘: n/a

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


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 [email protected] 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