MySQL由5.5升级为5.6(Windows版本 ZIP包安装)

MySQL支持全文检索(Full-Text Search),对于5.5版本,全文检索仅支持MyISAM存储引擎,5.6版本则支持InnoDB与MyISAM存储引擎,对Inndb的数据库使用全文检索需要将MySQL版本由5.5版本升级到5.6版本。

MySQL5.6版本新特性参照:http://dev.mysql.com/doc/refman/5.6/en/upgrading-from-previous-series.html

一、升级方法

MySQL支持两种升级方法,直接升级(in-place Upgrade)与逻辑升级(logical Upgrade)

1)直接升级(in-place Upgrade):安装好新版本数据库后,利用已经存在的数据库文件夹,同时运行mysql_upgrade脚本来升级;

2)逻辑升级(logical Upgrade):利用mysqldump将旧版本MySQL的数据导出,安装新版本后再将数据导入到新版本中,同时运行mysql_upgrade脚本来升级。

MySQL建议使用第2种方法进行升级。

二、升级

1、备份MySQL数据库

使用Mysqldump工具将数据库进行备份(包括mysql数据库)或者直接备份数据库文件夹
详细可参照:https://dev.mysql.com/doc/refman/5.6/en/backup-methods.html

2、下载最新的MySQL数据库安装包(以ZIP包为例)

目前MySQL最新的版本为5.7,在此以5.6版本进行说明。MySQL5.6版本的下载地址为:http://dev.mysql.com/downloads/mysql/

3、停止MySQL服务

1)如果将MySQL作为Windows服务启动,则需要执行以下命令停止MySQL

C:\> NET STOP MySQL

2)如果未将MySQL作为服务启动,使用mysqladmin停止MySQL

      C:\> "C:\Program Files\MySQL\MySQL Server 5.5\bin\mysqladmin" -u root shutdown

如果MySQL的root用户拥有密码,调用mysqladmin时使用-p选项指定密码

4、安装

1)解压MySQL压缩包到非MySQL安装目录

2)移除data目录(数据库存放在此目录中)或者将原MySQL中的data目录替换掉此目录

3)重新打包MySQL

4)在MySQL安装目录进行解压

5、将MySQL作为Windows服务以服务的方式启动MySQL

1)将原有的MySQL服务移除(如果旧版本以服务的方式运行)

"%OLD_MySQL_HOME%\bin\mysqld" --remove

2)安装MySQL服务

# 安装MySQL服务

"%NEW_MySQL_HOME%\bin\mysqld" --install

# 或指定MySQL配置文件安装服务

"%NEW_MySQL_HOME%\bin\mysqld" --install MySQL --defaults-file=C:\my.ini

3)启动MySQL服务

C:\> NET START MySQL

Mysql作为Windows服务运行参照:https://dev.mysql.com/doc/refman/5.6/en/windows-start-service.html

6、以管理员的权限来执行mysql_upgrade来检查升级是否成功

D:\Program Files\mysql-5.6.30\bin>mysql_upgrade

# 如果root账号的密码不为空,需要指定密码

D:\Program Files\mysql-5.6.30\bin>mysql_upgrade -uroot -p

# 输入密码后进行检查

mysql_upgrade的详细介绍可参照:https://dev.mysql.com/doc/refman/5.6/en/mysql-upgrade.html

7、注意事项

1)安装后通过运行SQL脚本还原数据库,如果更新了mysql数据库,一定要重启服务后新的设置才会生效(用户信息)

2)MySQL安装后,一定要记得修改配置文件编码格式为UTF-8(zip包默认名称为my-defaults.ini,可以修改为my.ini)

# 设置编码格式为UTF-8

[mysql]

default-character-set=utf8

 

[mysqld]

character-set-server=utf8

# 修改server接受的数据包大小,5.6版本默认大小为4M

# 有时候大的插入和更新会被max_allowed_packet 参数限制掉,导致失败

max_allowed_packet=100M

8、其他

1)升级前准备:https://dev.mysql.com/doc/refman/5.6/en/upgrading.html

2)Windows版本的升级:https://dev.mysql.com/doc/refman/5.6/en/windows-upgrading.html

3)MySQL升级实践

http://tencentdba.com/blog/mysql-5-5-upgrade-mysql-5-6/

http://www.oschina.net/translate/mysql-upgrade-best-practices

发表评论

电子邮件地址不会被公开。 必填项已用*标注