Windows(x86,64bit)升级MySQL 5.7.17免安装版

MySQL需要升级到5.5.3以上版本才支持Laravel 5.4默认的utf8mb64字符编码。因此就把MySQL升级了一下,期间还是遇到些小问题,记录一下以供参考。

升级准备

  1. 备份之前MySql目录下的data目录(数据库目录)。

  2. MySql官网下载MySQL 5.7.17版本压缩包。

  3. 管理员身份运行命令行,输入net stop mysql命令,停止mysql服务。

  4. 输入sc delete mysql命令,删除mysql服务。

  5. 卸载当前版本MySQL。

开始升级

解压MySQL 5.7.17压缩包到对应目录(示例:E:\Software\mysql-5.7.17-winx64)。

配置

复制my-default.inibin目录命名为my.ini(直接复制到根目录有时初始化会报错)。

my.ini文件添加如下内容:

[mysqld]
basedir = E:\Software\mysql-5.7.17-winx64
datadir = E:\Software\mysql-5.7.17-winx64\data
port = 3306
default-character-set = utf8
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES 

[WinMySQLadmin]
Server = E:\Software\mysql-5.7.17-winx64\bin\mysqld.exe
user = root
password =

[client]
default-character-set = utf8

注:sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES 应放在[WinMySQLadmin]client之上,否则会报错。且上述路径均需改为解压目录。

安装服务
  1. 管理员身份命令行,进入bin目录,输入mysqld --initialize命令,初始化话MySQL。

  2. 输入mysqld --install命令,安装MySQL服务。

  3. 输入net start msyql命令,启动M有SQL服务。

  4. 输入mysql -h localhost -u root -p命令,登录MySQL。
    此时要求输入密码,MySQL 5.7.17初始化话是创建了临时密码,在data目录下以管理员名称命名的err文件打开后,查看第一个Note,可以找到临时密码。

    2017-02-12T07:22:42.516404Z 1 [Note] A temporary password is generated for root@localhost: RqfpPhxhJ0%a
  5. 进入MySQL后,输入alter user 'root'@'localhost' identified by '新密码';设置密码。

  6. 输入flush privileges;刷新。

  7. 输入quit;退出,之后就可使用新密码登录MySQL。

导入数据

打开之前备份的data目录,复制各数据库目录到新版MySQL的data目录,即可使用之前的各数据库。

注:可能由于版本问题,数据不兼容无法使用,需要查看官方文档进行解决。

你可能感兴趣的:(mysql,windows)