问题描述
1.Navicat 连接 MySQL时出现问题:1251 - client does not support authentication protocol requested by server; consider upgrading MySQL client

2.ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)

解决办法
1.打开【服务】
确保MySQL服务是已启动状态,若未启动,右键启动服务即可。

2.运行cmd窗口
1、按下【windows】键输入“cmd”打开【命令提示符窗口】
2、输入mysql -u root -p和数据库密码进入MySQL控制台
【注】root是我数据库的用户名,如果你的数据库用户名不是root改成自己的数据库用户名即可,后续操作亦是如此

4、 输入下面两条指令即可,记得输入半角分号
【注】 'password’为你的数据库登录密码
【补充】如果一不小心直接复制粘贴到命令提示符窗口后,并且执行成功了,那么你的MySQL密码就修改为了'password',接下来具体操作看后文;
alter user 'root'@'%' identified with mysql_native_password by 'password';
flush privileges;
5、在Navicat中重新连接
【注】连接名随意;主机名或ip地址,端口可直接使用默认的,也可以手动输入;
【注】如果上述操作密码未自己修改,密码将变成‘password’。

【注】然后连接测试即可,连接成功后则可以继续MySQL后面的操作了!

【补充】ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)
1.当小伙伴未修改密码直接复制粘贴上述操作代码到命令符后,再打开命令提示符窗口输入自己原始用户密码发现错误

2.这时候先将密码输入为‘password’进入MySQL控制台

3.输入以下指令记得输入半角分号以及将‘password’改为你的新密码
【注】‘localhost’为你的主机名,但大多数情况下不用修改
【注】此处我已经将密码改为了‘123456’;
alter user 'root'@'localhost' identified with mysql_native_password by '123456';
4.然后退出命令符窗口重新进入输入用户名和新密码即可进入正常进入了

本文介绍了解决Navicat连接MySQL时出现的两个常见问题的方法:1251-clientdoesnotsupportauthenticationprotocolrequestedbyserver及ERROR1045(28000):Access denied for user 'root' @ 'localhost' (using password: YES)。提供了详细的步骤来更新MySQL客户端并更改数据库密码。
2734

被折叠的 条评论
为什么被折叠?



