之前使用Navicat连接MySQL时, 一直报错1251, 到处查找资料只能找到个解决方法,但是原因还是不清楚。
后来知道了报1251是因为MySQL用户密码加密问题。mysql8之前的版本中加密规则是mysql_ native_ password, 而在mysql8之后,加密规则是caching_ sha2_ password。
关于如何修改密码加密规则,可以使用命令的方式
#更新加密规则
alter user root@localhost identified by 'password' password expire never;
#更新密码
alter user root@localhost identified with mysql_native_password by 'password' ;
# 刷新权限
flush privileges;
当然,知道了问题所在,我们在下次安装mysql时,应该要注意密码的加密规则的修改,避免不必要的麻烦。