navicat连接mysql8.0报错1251解决方案

报错的原因:出现这个原因是mysql8.0 之前的版本中加密规则是mysql_native_password,而在mysql8.0之后,加密规则是caching_sha2_password, 解决问题方法有两种,一种是升级navicat驱动,第二种是把mysql用户登录密码加密规则还原成mysql_native_password. 

navicat连接mysql8.0报错1251解决方案_第1张图片

主要还是用第二种方法:

更新方式:用管理员身份打开cmd

1.mysql -uroot -p(输入密码)            进入mysql执行下面三个命令

2.use mysql;
ALTER USER 'root'@'localhost' IDENTIFIED BY '密码' password EXPIRE NEVER; #修改加密规则 
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password'; #更新一下用户的密码 
FLUSH PRIVILEGES; #刷新权限 

3.以上参数规则:

'root'   为你自己定义的用户名

'localhost' 指的是用户开放的IP,可以是'localhost'(仅本机访问,相当于127.0.0.1),可以是具体的'*.*.*.*'(具体某一IP),也可以是 '%' (所有IP均可访问)

'password' 是你想使用的用户密码

执行完成以后,连接数据库就OK了

 

你可能感兴趣的:(navicat连接mysql8.0报错1251解决方案)