解决Navicat连接数据库报错client does not support authentication
解决Navicat连接数据库报错client does not support authenticationOperation ALTER USER failed for 'user'@'localhost'
·
之前犯的那个大聪明错误,导致我走了许多弯路,许多坑,我都心灰意冷想卸载重装了,可我之前都装三次了,真的不想在重装了,所幸在不懈查找资料的过程中也解决了.
遇到上述错误我查了许多资料,原因就是mysql8.0以上版本的加密方式不同于之前的,有两种解决方案,一个是修改mysql加密方式,一个是Navicat升级版本,由于我用的是破解版的Navicat,所以只能选择第一种解决办法.
参考博文(http://t.csdnimg.cn/wKhwp)的第二种方法.
1.进入bin目录
mysql -u root -p
输入密码进入mysql
2.使用数据库
use mysql;
3.修改加密方式
alter user 'root'@'localhost' identified with mysql_native_password by "你的密码"
此时可能会报一个错误(由于我之前跟着别的博主瞎修改)
Operation ALTER USER failed for 'user'@'localhost'
是因为你的用户名不是'root'或者host不是'localhost'导致的,修改host的解决办法是
(1)查看root的user,host
SELECT user, host FROM user WHERE user = 'root';
(2)修改host为localhost,或者你的是'%',进行第3步直接替换localhost为%就可以
UPDATE user SET host = 'localhost' WHERE user = 'root';
(3)刷新权限
FLUSH PRIVILEGES;
(4)再进行(1)操作,可以看到已经修改成功了,在进行上述第3步和第(3)步即可.
回到navicat发现已经成功连接上,完结撒花,办法总比困难多,小伙伴们不要放弃,多尝试!
更多推荐
已为社区贡献1条内容
所有评论(0)