卸载已安装的MySQL、版本不同的情况下(非重装可跳过)
1. 在控制面板删除MySQL程序(如果有)
2. 快捷键win+R,输入“regedit”打开注册表
删除以下路径的MySQL(ControlSet可能有多个,如:ControlSet001、ControlSet002)
1. HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\Eventlog\Application\MySQL
2. HKEY_LOCAL_MACHINE\SYSTEM\ControlSet002\Services\Eventlog\Application\MySQL
3. HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Eventlog\Application\MySQL
3. 删除原来MySQL的文件夹
注意:删除前先进入cmd输入net stop mysql指令,这时可能会出现报错,原因可能是该程序被锁住了,解完锁就可以删除,也可以使用软件强行删除粉碎该文件
安装MySQL
1. 下载MySQL8.0
2. 配置my.ini文件在根目录下
配置文件为:自行更改相对应的安装路径及数据存放路径,不需要自己创建数据存放文件夹Data
[mysqld]
# 设置3306端口
port=3306
# 设置mysql的安装目录
basedir=D:\Mysql\mysql-8.0.27-winx64
# 设置mysql数据库的数据的存放目录
datadir=D:\Mysql\mysql-8.0.27-winx64\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
3. win+R快捷键输入cmd进入该解压包下的bin目录
3.1
3.2 执行mysqld --initialize --console
保存随机生成的密码,登录的时候要用到,这是修改密码的关键
**这里的随机密码要去掉前面的空格**
3.3 执行安装指令
mysqld --install [服务名]
3.4 利用刚刚的随机密码登录mysql
3.5 修改密码
ALTER USER 'root'@'localhost' IDENTIFIED BY '新密码';
4. Navicat连接本地MySQL出现密码错误
问题分析:因为MySQL8.0版本的密码加密方式变了
解决办法:修改该用户的密码加密方式
1. 修改user表,查看user表后可以发现加密方式为caching_sha2_password
2. 修改加密方式
ALTER USER 'root'@'localhost' IDENTIFIED BY 'w123456' PASSWORD EXPIRE NEVER; #修改加密规则
改为mysql_native_password的加密方式
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'w123456';#更新密码
最后就是这种效果了