首先在mysql官网下载该版本mysql 可惜太大了没法上传到博客
https://dev.mysql.com/downloads/mysql/ 这个链接 点击 looking for previous GA versions 你可以看到所有的mysql 版本 请自行下载
解压mysql的压缩包放在D更目录底下
1、配置mysql环境变量Path D:\mysql-5.7.34-winx64\bin
2,管理员打开cmd界面
3、输入命令 sc delete mysql //删除 旧服务
4、D:\mysql-5.7.34-winx64\bin 目录下 初始化数据库 生成data 目录及文件
mysqld --initialize
5、复制 旧的my.ini 文件进D:\mysql-5.7.34-winx64\bin目录下
并且更改my.in文件底下的
basedir="D:/mysql-5.7.34-winx64/" #mysql的根目录
datadir="D:/mysql-5.7.34-winx64/data/" #mysql的data目录
skip-grant-tables #表示忽略密码
6、回到cmd界面 D:\mysql-5.7.34-winx64\bin 目录下执行第一条 (删除第二条不执行)
mysqld --install //安装服务 默认bin下寻找my.ini文件
sc delete mysql 可以删除服务
7、net start mysql 启动服务
8、mysql -u root -p 不用登陆密码 直接进去
9.修改密码
update mysql.user set authentication_string=password('填上你的密码(例如123456)') where user='root' and Host = 'localhost';
flush privileges;
quit;
10.停止mysql服务 net stop mysql
11.恢复上个版本的数据库内容
复制旧的mysql 的data目录底下的 数据库文件 例如 test 数据库对应在data目录底下就是test
这里将data底下的test文件夹和ibdata1文件复制到 mysql5.7.26底下的data目录即可
12.最后重启服务 net start mysql 大功告成
注释:
如果出现服务杀不掉使用下面命令
D:\mysql-5.7.34-winx64\bin>tasklist| findstr "mysql"
mysqld.exe 1188 Services 0 7,728 K
D:\mysql-5.7.34-winx64\bin>taskkill/f /t /im mysqld.exe
成功: 已终止 PID 1188 (属于 PID 660 子进程)的进程。
可能是你的帐号不允许从远程登陆,只能在localhost。这个时候只要在localhost的那台电脑,登入mysql后,更改"mysql" 数据库里的 “user” 表里的 “host"项,从"localhost"改称”%"
1、登录mysql
mysql -u root -p
2、选择mysql数据库
use mysql;
ALTER USER'root'@'localhost' IDENTIFIED BY'zlw123'; 需要重置密码
3、更改要登录用户的host为“%”
update user set host = '%' where user ='root';
4、刷新MySQL的系统权限相关表
flush privileges;
运行完毕后再次连接测试,若还不行重启mysql服务。