惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Last Week in AI
Last Week in AI
有赞技术团队
有赞技术团队
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
人人都是产品经理
人人都是产品经理
博客园 - 司徒正美
博客园 - 聂微东
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
博客园 - 叶小钗
罗磊的独立博客
IT之家
IT之家
博客园 - 三生石上(FineUI控件)
V
Visual Studio Blog
T
Tailwind CSS Blog
大猫的无限游戏
大猫的无限游戏
Hugging Face - Blog
Hugging Face - Blog
H
Hackread – Cybersecurity News, Data Breaches, AI and More
N
Netflix TechBlog - Medium
MyScale Blog
MyScale Blog
J
Java Code Geeks
L
LangChain Blog
S
SegmentFault 最新的问题
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
Apple Machine Learning Research
Apple Machine Learning Research
G
Google Developers Blog

博客园 - 我也是个傻瓜

ArcGIS Pro新建地图底图加载慢 ArcGIS属性表搜索查找字符串长度限制bug Win11浏览器鼠标光标变白看不见解决方法 IIS 未能加载文件或程序集XX或它的一个依赖项 ArcGIS显存缓存路径修改 Python卸载Config.Msi权限问题 ArcGIS中对“被完全包含”的理解。 ArcGIS中NULL空值的特殊性 Cesium加载本地离线影像南北空洞缺失问题 IIS中W3SVC、WAS服务无法启动问题 Navicat连接Oracle报错ORA-28547问题 WebService调用创建应用程序事件日志权限问题 您必须有许可证才能使用此 ActiveX 控件0x80131901 Visual Studio Installer 2022正在进行准备 C#修改已根据框架版本自动选择语言版本 打开工作空间时,但未在 DTD/架构中声明 Word表格1.5倍行距居中问题 CAD安装Error 1402权限问题解决 ArcEngine10.2中融合工具Dissolve的bug lQueryDef查询Evaluate报该几何不包含M值问题。 Visual Studio 离线安装0x80131509 如何快速向Windows安全中心添加排除项 VMware复制无法扫描本地目录,您可能没有执行此操作的权限 如何判断ArcGIS界面语言是中文还是英文 Visual Studio批量删除Token注释 7zip压缩Updating for multivolume archives is not implemented SVN设置强制提交日志 ArcGIS AddIn插件开发断点调试
解决Authentication method 'caching_sha2_password'...
我也是个傻瓜 · 2025-08-08 · via 博客园 - 我也是个傻瓜

一、错误描述

在使用MySQL8.0连接数据库时,大多数人会遇到这样的连接错误:
Connection open error . Authentication method 'caching_sha2_password' not supported by any of the available plugins.

二、问题分析

mysql_native_password和caching_sha2_password(8.0新增的)是 MySQL 数据库中用于用户身份验证的两种不同的插件。它们的区别:

mysql_native_password:使用的是相对简单的旧版加密算法。它将用户密码以明文形式传输到服务器,然后在服务器端使用 PASSWORD() 函数进行加密存储。这种加密方式相对较弱,安全性较低。

caching_sha2_password:采用了更为强大的哈希算法对用户密码进行加密。caching_sha2_password 使用的是其中的 SHA-256 算法。这种加密方式生成的哈希值长度更长,计算复杂度更高,破解难度更大,从而提供了更高的安全性。

因此,解决有的两种方案,一是从数据库层面修改mysql设置使用其使用mysql_native_password方式验证;二是从数据访问层面,更新数据库连接驱动使支持caching_sha2_password。

三、解决方案

1、方案一(简单,不安全)

打开C:\ProgramData\MySQL\MySQL Server 8.0\my.ini配置文件,增加设置,重启mysql服务。

default_authentication_plugin=mysql_native_password

image

很多人说这种方法无效,这是因为它只能针对新建的用户有效,对于已创建的root用户无效。

image

可查询当前用户的验证方式:

SELECT user,pluginFROMuser;

image

因此,将root用户的认证方式改为mysql_native_password可解决报错问题:

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '123456';

2、方案二(安全,更彻底)

更新数据库连接驱动使支持caching_sha2_password。