MySQL 8 新特性问题
遇到的问题
Authentication plugin caching_sha2_password cannot be loaded
问题原因
使用Navicat Premium 12连接MySQL数据库。
mysql8 之前的版本中加密规则是mysql_native_password,
而在mysql8之后,加密规则是caching_sha2_password。
# 解决方法:
一种是升级navicat驱动
一种是把mysql用户登录密码加密规则还原成mysql_native_password
解决方法
# 第一种是升级navicat驱动
# 第二种是把mysql用户登录密码加密规则还原成mysql_native_password
# step 1: 登录MySQL
# step 2: 选择mysql 数据库
use mysql
# step 3: 查看存储信息
select host, user, authentication_string, plugin from user;
# root 用户对应的host 默认显示localhost,说明只支持本地访问,不允许远程访问
# step 4: 更改host 默认配置
update user set host='%' where user='root';
# step 5: 修改加密规则
ALTER USER 'root'@'%' IDENTIFIED BY '123456' PASSWORD EXPIRE NEVER;
# 注意:IDENTIFIED BY后的密码是之前连接MySQL的密码
# step 6: 更新用户密码
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456';
# 注意:BY后的密码默认与之前一致,不做修改
# step 7: 刷新权限
FLUSH PRIVILEGES;
# step 8: 重新设置密码
alter user 'root'@'%' identified by '123456';