一、错误信息
在使用Navicat来连接MySQL数据库的时候,可能会遇到1251的错误警告,如下图所示:
出现这个问题的原因是MySQL8.0版本的加密方式和MySQL5.0的不一样,所以使用Navicat连接MySQL会报错。不过不用着急,不是什么大问题,下面就会给出解决办法。
二、解决办法
-
管理员权限打开cmd命令窗口,输入命令 [mysql -u root -p] 打开MySQL数据库,把命令中的root换成自己的数据库用户名,然后输入密码进行登录。
-
更改加密方式,输入命令 [ALTER USER ‘root’@‘localhost’ IDENTIFIED BY ‘password’ PASSWORD EXPIRE NEVER;],把命令中的password换成自己的密码.
-
更改密码,我这里将密码更改为 123456 ,也可以输入原来的密码,输入命令 [ALTER USER ‘root’@‘localhost’ IDENTIFIED WITH mysql_native_password BY ‘123456’; ]如果你要更改为其他密码,将命令中的123456替换为你的密码即可。
-
输入命令 [FLUSH PRIVILEGES;] 进行刷新。
-
这个时候便可以使用Navicat连接我们的数据库,如果这个时候报出错误:ERROR 1396 (HY000): Operation ALTER USER failed for ‘root’@’%’ :,那么我们需要先选择数据库,查看一下数据库中的数据,然后在执行上述的四步。即可以分别输入以下两条命令:
use mysql;
select user,host from user;