记Windows10系统MySQL5.7升级到8.0

记Windows10系统MySQL5.7升级到8.0

Scroll Down

写这篇blog,记录卸载和安装注意事项;

MySQL跟窝们常用的软件不同,并没有点击一下更新就可以直接从5.7更新到8.0这种操作。。。。

所以,无奈,为了适配个项目,只能卸载用了几年的5.7了,听说8.0性能提升很多,是时候更新一波,好了,步入正题,操作步骤如下:

1.停止MySQL服务

2.卸载MySQL相关的程序

step1:本次是win10系统环境;左下角点击:开始-->所有应用-->弹出最近所有应用程序,选择MySQL右击点击卸载,这里会跳到控制面板,

1557755926114

step2: 图一跳转 or windows键+R-->Control-->程序和功能;所有MySQL程序点击右键卸载

1557755926114

3.本人安装目录在C盘,首先打开C:\Program Files,删除MySQL文件夹

![1557755926114](https://noheart.cn/upload/mysql/003.jpg)

step1:打开隐藏文件ProgramData文件夹,删除下面的MySQL文件

1557755926114

4.卸载MySQL相关注册表,这里也是很多小伙伴重装不成功的坑

step1:Windows+R-->regedit-->打开注册表

1557755926114

step2:根据路径打开并删除:

HKEY_LOCAL_MACHINE/SYSTEM/ControlSet001/Services/Eventlog/Applications/MySQL 

HKEY_LOCAL_MACHINE/SYSTEM/ControlSet002/Services/Eventlog/Applications/MySQL 
    HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Services/Eventlog/Applications/MySQL

HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Services一般服务会以相同的名字(名字通常是MySQL)

还有就是F3或Ctrl+F打开查找框,输入MySQL,注意焦点放在计算机上

还有重要的一步删除Connector Net XXX注册表,大家失败的原因好多也是在这个注册表上面

1557755926114

step3:查出的MySQL注册表直接删掉

1557755926114

完成以上四步就已经卸载干净MySQL了,可以安装8.0了

5.安装MySQL8.0

1557755926114

去官网下载,笔者这里下载的是mysql-8.0.17-winx64,版本比较新,8.0解压版的安装非常简便,解压配置一下即可使用,笔者推荐安装解压版的。
传送门:点击此处跳转官网下载

6.下载完社区版的MySQL8.0,解压到你想安装的文件夹下面,然后添加环境变量

新增一个
MYSQL_HOME
E:\Program Files\mysql-8.0.17-winx64

在path变量下添加      %MYSQL_HOME%\bin

1557755926114
1557755926114
1557755926114

注意路径修改成你的安装路径

7.以管理员的身份打开cmd窗口跳转路径到你的安装路径E:\Program Files\mysql-8.0.17-winx64\bin

这里踩了个坑,网上很多说要加my.ini 文件,和新建一个data文件夹,其实是没必要的,可能也是我装的MySQL版本比较新的原因吧,8.0.17是不需要my.ini文件的,它会导致MySQL 安装完后启动失败

1> 初始化命令mysqld --initialize --user=mysql --console

(记住一定要进行初始化,很多人不进行初始化,就出现了1067错误,怎么弄都搞不定)

初始化完成之后,会生成一个临时密码这里需要注意把临时密码记住(在)

然后在你的数据库保存目录生成一些文件,不用管

2>接着就是输入mysqld -install进行服务的添加

mysqld -install MySql80
这里的MySql80指的MySQL服务的别名,个人习惯

3>输入net start MySql80启动服务

1557755926114

4>mysql -u root -p 登陆数据库,因为没设置登陆密码,因此第一次登陆直接回车登陆就好了

5>设置root密码

alter user'root'@'localhost' IDENTIFIED BY 'MyPass@123456';

6>可能出现的坑,数据库图形化工具连接失败,因为MySQL8.0修改了密码规则,连接报2058错误

解决方法:windows 下cmd 登录 mysql -u root -p 登录你的 mysql 数据库,然后 执行这条SQL:

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password';
password改成对应的密码

至此MySQL5.7到8.0的升级告一段落,告辞。。。

-----------------------------------09.01再次更新.......

上次装完,用navicat,sqlyog连接成功后就没用过密码登陆了,导项目修改MySQL密码为本机密码时,

巧了

密码给忘了,试了N次,没试出来,鬼知道我当时设置的什么,shit

本以为MySQL有什么暗门阔以不用密码登进去,度娘谷歌一波后,发现皆是改文件配置什么的,麻烦

最后想起来,我装的解压版的,好像只是安装了MySQL服务,能不能卸载服务重装呢,再谷歌一波,发现解决方案

搞定,卸载重装,

两分钟完成。。。
#记录一下
1557755926114

  • 首先,停止MySQL服务

  • net stop mysql

  • 然后,删除服务,解压版真的很方便,一条命令就删除服务了

  • sc delete mysql

  • 删除data文件夹
    到这里就可以重装了

依次

  • 初始化命令
  • mysqld --initialize --user=mysql --console
2019-09-02T15:03:28.323850Z 0 [System] [MY-013169] [Server] E:\Program Files\mysql-8.0.17-winx64\bin\mysqld.exe (mysqld 8.0.17) initializing of server in progress as process 4868
2019-09-02T15:03:58.262582Z 5 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: Vksj5aqHaa+r
2019-09-02T15:04:15.768338Z 0 [System] [MY-013170] [Server] E:\Program Files\mysql-8.0.17-winx64\bin\mysqld.exe (mysqld 8.0.17) initializing of server has completed

这里要注意的是,会生成一个初始密码,待会登陆需要用到

  • 安装服务
  • mysqld -install
  • 启动服务
  • net start MySQL
  • 登陆数据库
  • mysql -u root -p
  • 输入初始密码
  • 修改密码
  • ALTER USER root@localhost IDENTIFIED BY 'xg1314';

好了,搞定,这次密码忘不了了。。。