navicat连接mysql8.0.1版本出现1251--Client does not support authentication protocol requested by server的解决

这个文章是转自https://blog.csdn.net/qq_42152399/article/details/80360817  这个人又是转载了https://blog.csdn.net/XDMFC/article/details/80263215这个人的,担心哪天这俩都没了 故自己再搞一下    上传图片很麻烦,我就不上传了,尽量描述详细。

此外,这个方式还解决了我再安装解压版时的一个问题,就是mysql8在选择无密码mysqld --initialize-insecure这种方式的时候,在最后执行set password=password('new password');的时候会报语法错误,很尴尬,于是我想用navicat链接一下然后再执行sql

的但是又发生了这个错误,不过解决了1251这个错误之后,密码也成功的修改了!

1、通过命令行进入解压的mysql根目录下。

2、登陆数据库

通过cmd的方式登录mysql数据库:管理员身份打开cmd窗口,切换到mysql的bin目录下,输入mysql -u root -p 回车,然后如数‘你的密码’,回车 登录到mysql。

3、更改加密方式:

输入下面的sql;

mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'password' PASSWORD EXPIRE NEVER;

4、更改密码:该例子中 123为新密码

mysql> ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '123';

5、刷新权限

mysql> FLUSH PRIVILEGES;


那位小哥加了下面这行话

“这步完成后我已经成功解决了问题。如果报错,可以看下面,博主依然给出了解决方案“

// 如果报错ERROR 1396 (HY000): Operation ALTER USER failed for 'root'@'%':

则是远程访问权限不正确,先选择数据库,查看一下再更改:

1
2
3
4
5
6
7
8
9
10
11
12
13
mysql> use mysql;
Database  changed
 
mysql>  select  user ,host  from  user ;
+ ------------------+-----------+
user              | host      |
+ ------------------+-----------+
| mysql.infoschema | localhost |
| mysql.session    | localhost |
| mysql.sys        | localhost |
| root             | localhost |
+ ------------------+-----------+
rows  in  set  (0.00 sec)
最后,感谢参考的该博主。此次转载只希望帮助更多的人,毕竟在犄角旮旯里找到这个方案不容易。若有人想要转载,请注明原博主也就是https://blog.csdn.net/XDMFC/article/details/80263215这个人的,谢谢。
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值