3 MySQL8 因加密规则改变而出现的错误Navicat DBeaver

方法一:升级 Navicat 版本。测试发现,使用 Navicat 15 可以解决此问题。方法二:修改密码加密规则回 mysql_native_password。步骤如下:1. 以管理员身份运行 cmd,然后使用命令进入 MySQL。2. 执行命令:`mysql -uroot -proot`,设置密码永不失效。3. 更改密码,执行命令:`ALTER USER 'root'@'...
3 MySQL8 因加密规则改变而出现的错误Navicat DBeaver
在使用 Navicat for MySQL 连接 MySQL 8 时遇到“authentication plugin 'caching_sha2_password' cannot be loaded”错误,这是因为 MySQL 8 引入了新的密码加密方式 caching_sha2_password,而 Navicat 版本不支持此加密方式。以下是解决步骤:

方法一:升级 Navicat 版本。测试发现,使用 Navicat 15 可以解决此问题。

方法二:修改密码加密规则回 mysql_native_password。步骤如下:

1. 以管理员身份运行 cmd,然后使用命令进入 MySQL。

2. 执行命令:`mysql -uroot -proot`,设置密码永不失效。

3. 更改密码,执行命令:`ALTER USER 'root'@'localhost' IDENTIFIED BY 'password' PASSWORD EXPIRE NEVER;`。

4. 重新设置加密规则:`ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '新密码';`。

5. 刷新数据库或重启 MySQL 服务:`FLUSH PRIVILEGES;`。

在使用 DBeaver 连接 MySQL 8 时,可能会遇到“Public Key Retrieval is not allowed”错误。解决方法如下:

1. 修改 DBeaver 客户端,将 allowPublicKeyRetrieval 值设置为 true。

2. 更改密码规则:`ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '新密码';`。

重要备注:如果用户账号使用 sha256_password 认证,传输过程中需保护密码,推荐使用 TLS 作为首选机制。若 TLS 不可用,则使用 RSA 公钥加密。设置 ServerRSAPublicKeyFile 连接字符串或 AllowPublicKeyRetrieval=True 允许客户端自动从服务器请求公钥。然而,启用 AllowPublicKeyRetrieval=True 可能使恶意代理执行 MITM 攻击以获取明文密码,因此默认情况下应设置为 False,并显式启用。2024-08-18
mengvlog 阅读 8 次 更新于 2025-07-21 01:13:31 我来答关注问题0
檬味博客在线解答立即免费咨询

mySQL相关话题

Copyright © 2023 WWW.MENGVLOG.COM - 檬味博客
返回顶部