安装MySQL数据库的版本号为8.0.11后,用Navicat for MySQL连接时出现1251问题,如下图所示:

1 问题所在
MySQL8之前的版本中加密规则是mysql_native_password,而在mysql8之后,加密规则是caching_sha2_password。
2 解决方法
2.1 在MySQL8.0 Command Line Client中输入登录密码
2.2 输入 use mysql;后点回车
2.3 输入select user, host from user;点回车后,看host列中有没有%的
2.4 如果没有,输入update user set host='%' where user='root';(这里假定用户名为root)
2.5 更新用户名和密码ALTER USER 'root'@'localhost' IDENTIFIED BY 'password' PASSWORD EXPIRE NEVER;
2.6 修改加密规则ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password';
2.7 刷新FLUSH PRIVILEGES;
[注意]
- root时自定义的用户名
- localhost指的是用户开放的IP,可以是localhost(仅本机访问,相当于127.0.0.1),可以是具体的’...’(具体某一IP),也可以是 ‘%’ (所有IP均可访问)
- password是你想使用的用户密码
本文介绍了解决MySQL8.0使用Navicat连接时出现1251错误的方法。主要原因是MySQL8.0默认采用caching_sha2_password加密方式,不同于之前的mysql_native_password。文中提供了详细的步骤来更改加密规则。
18万+

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



