navicat 连接 mysql 出现1251解决方案

Navicat 连接 MySQL 时报错 1 2 5 1 ,加密方法不匹配。

解决方案: 1 .重新配置MySQL。
选择 mysql_native_password。
2 .卸载并重新安装MySQL并选择mysql_native_password。
3 . 将 Navicat 更新到最新版本。
4 . 检查用户权限和加密方式。

在继续之前请备份您的数据。

如何解决Linux系统中的Navicat for MySQL 1045错误

1 04 5 错误表示密码错误。
正确的说,以root用户登录mysql命令行,先以flush权限执行。

切换到mysql数据库。
使用 update 语句更改密码。
记得加引号。

如果仍然不起作用,请再次尝试 setpassword 命令。
这次使用旧密码。

不要忘记更新许可证。
泄密权。

使用此命令导入数据。
mysql -u 用户名 -p 密码 数据库 <文件路径.不要忘记添加字符集utf8
使用“创建数据库”创建数据库。
定义了字符集utf8
错误 1 2 5 1 是版本不匹配。
客户端版本必须与服务器版本匹配。

查看 my.cnf 文件。
mysqld 类必须具有 default-authentication-plugin=mysql_native_password。

您仍然需要安装正确版本的 Navicat。
不一致是绝对不可能的。

注意指挥区域。
不要走错路。
数据安全很重要。

mysqL安装出现1045问题该怎么解决呢

抱歉,我在安装 MySQL 时遇到了很多有关 1 04 5 问题的陷阱。
记得前年的一个项目中,新安装的MySQL连接失败,报1 04 5 ,我的第一反应是用户密码不正确。

你说的方法我试过了。
首先以root身份登录,输入mysqladmin -h主机名flush-privileges use mysql;此命令,然后更新用户 set password=password('yourpass') where user='root';更改密码,然后FLUSH PRIVILEGES;更新权限。
有时就是这么简单。

然而,还有另一种特别令人烦恼的情况。
例如,去年我在做旧系统时,报1 2 5 1
客户端不支持服务器所需的认证协议;当我尝试连接它时。
这件事,我当时就很困惑。
查资料发现MySQL版本更新了,密码验证机制也发生了变化。
我尝试了 mysql> set password for user1 @"localhost"=old_password('yourPassword');你提到的命令并且它有效。
只需转换旧密码,客户端仍然可以连接。

我是一个喜欢直接的人。
有时省事,只需使用 SETPASSWORDFOR sns@"localhost"=OLD_PASSWORD('sns');命令更改指定用户的密码。
当然,前提是你需要知道你的用户名和密码。

另外,在导入数据时,我经常使用 mysql -u uname -p --default-character-set=utf8 databasename 记得有一次我导入中文数据时没有添加--default-character-set=utf8 ,结果出现了乱码,这让我很难过。

创建数据库createddatabasename 字符集utf8 ;我也经常使用它。
简单直接。

一般来说,解决1 04 5 问题的关键是用户名和密码是否正确以及客户端和服务器版本是否兼容。
你说的这些方法我都试过了,还是比较靠谱的。
请记住,当您更改密码时,请不要忘记将您的密码和 user1 替换为您自己的密码。