如何解决MYSQL8.4.1 MySQL84--ERROR 1524(HY000):Plugin ‘msql_native_password‘ is not loaded问题 |
问题描述安装了mysql8.4.1,使用sqlyog、navicat无法连接,报错:
原因出现这个原因是MySQL8之前的版本中加密规则是mysql_native_password 而在MySQL8之后,加密规则是caching_sha2_password 解决问题方法有两种
按照网上教程尝试第二种方式解决登录mysql依次执行如下命令: #使用mysql数据库 USE mysql; #修改'root'@'localhost'用户的密码规则和密码 ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'abc123'; #刷新权限 FLUSH PRIVILEGES; 新问题按照如上方法操作到第二条命令的时候出现了报错:Plugin ‘msql_native_password‘ is not loaded. #查询mysql插件信息 show show plugins; 结果发现mysql_native_password 插件是DISABLED状态 。 解决1、在my.ini文件中加入该插件启动命令,在[mysqld]段添加mysql_native_password=ON 。 2、重启MySQL服务 。然后登录mysql再show plugins;可以看到mysql_native_password是ACTIVE状态 3、再次执行前面的命令,这里需要注意执行第二条命令之后root的密码会被修改成新的:abc123,根据自己的情况修改 。 #使用mysql数据库 USE mysql; #修改'root'@'localhost'用户的密码规则和密码 ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'abc123'; #刷新权限 FLUSH PRIVILEGES; 此时命令都可以正常执行,使用sqlyog也可以登录了,完美解决 。 总结以上为个人经验,希望能给大家一个参考,也希望大家多多支持 。 |