Navicat连接mysql报错 1251错误

错误提示
Navicat连接mysql报错 1251错误_第1张图片
出现这个原因是mysql8 之前的版本中加密规则是mysql_native_password,而在mysql8之后,加密规则是caching_sha2_password
解决办法:把mysql用户登录密码加密规则还原成mysql_native_password.

步骤:
1.打开cmd命令窗口,输入命令 mysql -uroot -p 打开MySQL数据库,然后输入密码进行登录。
Navicat连接mysql报错 1251错误_第2张图片

2.修改加密规则
将加密方式改为mysql_native_password
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '12345';
Navicat连接mysql报错 1251错误_第3张图片

3.更新用户的密码
这里将密码更改为password,如果想要更改其他密码,把password替换掉即可
ALTER USER 'root'@'localhost' IDENTIFIED BY 'password' PASSWORD EXPIRE NEVER;
Navicat连接mysql报错 1251错误_第4张图片

4.输入命令
FLUSH PRIVILEGES; 进行刷新。
在这里插入图片描述
5. 这个时候便可以使用Navicat连接我们的数据库,如果这个时候报出错误:ERROR 1396 (HY000): Operation ALTER USER failed for ‘root’@’%’ :,那么我们需要先选择数据库,查看一下数据库中的数据,然后在执行上述的四步。

你可能感兴趣的:(mysql,数据库,database)