1.卸载旧的MySQL(5.),旧版安装时为压缩包文件安装
1.先将数据进行备份:
快捷键win+R,输入cmd,回车
输入:
mysql
登录MySQL客户端
查看自己旧版MySQL安装路径,输入命令:
show variables like "%char%";
查看MySQL数据库真正的data目录:
show variables like 'datadir';
退出:
exit;
进入旧版MySQL安装路径下的bin目录:
输入:
mysqldump --all-database > E:\all_database.sql -u root -p
回车
输入root(mysql用户名,具体以自己的为主)用户密码,将数据备份到E盘相应的文件中。
2.卸载旧版本MySQL
快捷键win+R,输入services.msc
服务,找到mysql并停止。(我的图片上已经删除,并没有显示)
打开任务管理器,将mysql结束任务
直接打开文件资源管理器找到之前查看的相应路径,删除旧版MySQL配置文件和数据目录(我的为D:/MySQL Server5.6)
快捷键win+R,输入:regedit
删除:
1.HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\MySQL
ControlSet001,不一定是001或002,可能是ControlSet005等
2.HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\EventLog\Application\MySQL
重启电脑
2、下载、安装新版mysql 8.0.20
参考:MySQL 8.0.19安装教程(windows 64位)
下载链接:https://dev.mysql.com/downloads/mysql/
我的电脑为win10,64,可以根据自己的电脑进行具体选择
下载第一个压缩包文件(mysql-8.0.20-winx64.zip),解压(我修改文件夹名为:mysql-8.0.20,可以自己更改为其他名字或不更改)
在该目录下,新建文本文件,将文件类型改为的my.ini
[mysqld]
# 设置3306端口
port=3306
# 设置mysql的安装目录
basedir=E:\mysql-8.0.20
# 设置mysql数据库的数据的存放目录
datadir=E:\mysql-8.0.20\Data
# 允许最大连接数
max_connections=200
# 允许连接失败的次数。
max_connect_errors=10
# 服务端使用的字符集默认为utf8mb4
character-set-server=utf8mb4
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
# 默认使用“mysql_native_password”插件认证
#mysql_native_password
default_authentication_plugin=mysql_native_password
[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8mb4
[client]
# 设置mysql客户端连接服务端时默认使用的端口
port=3306
default-character-set=utf8mb4
cmd:以管理员身份运行
进入安装目录bin路径下
进入bin,输入:
mysqld --initialize --console
出错:显示找不到vcruntime140.dll,无法继续执行代码
解决参考:MySQL:由于找不到VCRUNTIME140_1.dll,无法继续执行代码。
2020-06-10T10:35:45.654709Z 0 [System] [MY-013169] [Server] E:\mysql-8.0.20\bin\mysqld.exe (mysqld 8.0.20) initializing of server in progress as process 13684
2020-06-10T10:35:45.678830Z 1 [System] [MY-013576] [InnoDB] InnoDB initialization has started.
2020-06-10T10:35:46.571616Z 1 [System] [MY-013577] [InnoDB] InnoDB initialization has ended.
2020-06-10T10:35:48.717992Z 6 [Note] [MY-010454] [Server] A temporary password is generated for [email protected]: u:ihr_i)S9jm
A temporary password is generated for [email protected]: u:ihr_i)S9jm:root @ localhost:后面的u:ihr_i)S9jm就是初始密码(不含首位空格)
安装mysql服务器:
mysqld --install [服务名] ###(服务名可以不加默认为mysql)
成功之后,启动服务器:
net start mysql
3.打开Navicat连接MySQL,修改密码
参考:MySQL 8.0.19安装教程(windows 64位)
输入之前的初始密码(我的是u:ihr_i)S9jm)
解决参考:【MySQL】Navicat连接mysql出现1862错误
mysql -uroot -pu:ihr_i)S9jm
mysqladmin -uroot -p password
输入初始密码:(我的是u:ihr_i)S9jm)
修改密码为:root
再次确认密码:root
4.导入备份数据库到新版mysql中
快捷键win+R,输入cmd,进入自己的新版MySQL安装路径bin目录下:
mysql -u root -p
root(自己设的密码)
进到mysql>状态下
将之前备份的数据导入到新的mysql中:
source E:\all_database.sql
注意:若新版本比旧版本高需要在mysql安装目录下执行
mysql_upgrade -u root -p
root(自己设的密码)
来解决兼容问题
在Navicat右键刷新,看到数据库已导入成功。
更新MySQL完毕。