mysql错误:this authentication plugin is not supported
this authentication plugin is not supported
应用程序连接mysql docker一直报错:this authentication plugin is not supported。 
google发现,原来是mysql新版本(8.0以上)将root用户使用的plugin更新成caching_sha2_password。 
登录mysql输入如下命令可以看到:
mysql> select user,plugin from mysql.user;
+------------------+-----------------------+
| user             | plugin                |
+------------------+-----------------------+
| root             | caching_sha2_password |
| mysql.infoschema | mysql_native_password |
| mysql.session    | mysql_native_password |
| mysql.sys        | mysql_native_password |
| root             | caching_sha2_password |
+------------------+-----------------------+
解决办法有: 
(1)降级,使用老版本mysql。 
(2)将root的plugin改成mysql_native_password。 
这里改成:
ALTER USER ‘root’@’localhost’ IDENTIFIED WITH mysql_native_password BY ‘root’;
这行代码有两层含义,第一:修改root的密码为’root’,摒弃原来的旧密码。第二:使用mysql_native_password对新密码进行编码。
然后再启动应用,还是一样报错。再看mysql.user,发现还有一个host”%”的root用户:
mysql> select host,user,plugin from mysql.user;
+-----------+------------------+-----------------------+
| host      | user             | plugin                |
+-----------+------------------+-----------------------+
| %         | root             | caching_sha2_password |
| localhost | mysql.infoschema | mysql_native_password |
| localhost | mysql.session    | mysql_native_password |
| localhost | mysql.sys        | mysql_native_password |
| localhost | root             | mysql_native_password |
+-----------+------------------+-----------------------+
5 rows in set (0.00 sec)
将这个用户也改了: 
ALTER USER ‘root’@’%’ IDENTIFIED WITH mysql_native_password BY ‘root’; 
再看:
mysql> select host,user,plugin from mysql.user;
+-----------+------------------+-----------------------+
| host      | user             | plugin                |
+-----------+------------------+-----------------------+
| %         | root             | mysql_native_password |
| localhost | mysql.infoschema | mysql_native_password |
| localhost | mysql.session    | mysql_native_password |
| localhost | mysql.sys        | mysql_native_password |
| localhost | root             | mysql_native_password |
+-----------+------------------+-----------------------+
改成功了,再启动应用,报错: 
this user requires mysql native password authentication 
在连接mysql的url上加上?allowNativePasswords=true,这次正常了。
---------------------
mysql错误:this authentication plugin is not supported的更多相关文章
- Mac_Navicat Premium连接MySQL错误2059 - Authentication plugin 'caching_sha2_password' cannot be loaded: dlopen(../Frameworks/caching_sha2_password.so, 2): image not found
		
mac下MySql启动连接报错:Authentication plugin ‘caching_sha2_password’ cannot be loaded: dlopen(/usr/local/my ...
 - 【问题解决】连接mysql 8错误:authentication plugin 'caching_sha2_password
		
在刚安装好mysql8,使用native连接的时候报错 authentication plugin 'caching_sha2_password'... 首先确保服务已开启,然后通过cmd命令进入my ...
 - mysql 错误解决:Plugin 'FEDERATED' is disabled. /usr/sbin/mysqld: Table 'mysql.plugin' doesn't exist
		
今天安装完Mysql后,开启发生了错误: 1.打开相应文件夹,查看错误信息: 2.打开错误信息文件,查看错误原因是:Plugin 'FEDERATED' is disabled. /usr/sbin/ ...
 - Navicat 连接mysql 报错: Authentication plugin caching_ sha2_password cannot be loaded
		
出现这个错误的时候, 网上的资料都是修改mysql的登录信息的, ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password ...
 - Navicat Premium 连接MySQL数据库出现Authentication plugin 'caching_sha2_password' cannot be loaded的解决方案
		
1. 管理员权限运行命令提示符,登陆MySQL mysql -u root -p root 2. 修改账户密码加密规则并更新用户密码 ALTER USER 'root'@'localhost' ID ...
 - Navicat Premium 12连接MySQL数据库出现Authentication plugin 'caching_sha2_password' cannot be loaded的解决方案
		
1. 管理员权限运行命令提示符,登陆MySQL mysql -u root -p password 2. 修改账户密码加密规则并更新用户密码 ALTER USER 'root'@'localhost' ...
 - navicat连接MySQL数据库出现Authentication plugin 'caching_sha2_password的问题
		
1.以管理员身份运行cmd终端,cd 到mysql安装目录的bin文件夹下面 输入mysql -u root -p,回车键后输入密码登录mysql 依次输入一下三条命令: ALTER USER 'ro ...
 - MySQL 连接出现 Authentication plugin 'caching_sha2_password' cannot be loaded
		
参考帖子: https://www.cnblogs.com/zhurong/p/9898675.html cmd 需要使用管理员权限打开
 - mysql Authentication plugin 'caching_sha2_password' is not supported问题处理
		
使用mysql8.0版本,登录失败,提示 Authentication plugin 'caching_sha2_password' is not supported. 原因是在MySQL 8.0以后 ...
 
随机推荐
- Jenkins+Docker持续集成
			
本节内容: Jenkins介绍 安装部署Jenkins Jenkins构建maven风格的job Jenkins邮件通知设置 Sonar Jenkins与Docker结合 一.Jenkins介绍 Je ...
 - 【知了堂学习笔记】java 正则表达式
			
本文参考网络上面别人的博客知识产出 正则表达式基础 1.句号 假设你想要找出三个字母的单词,而且这些单词必须以“t”字母开头,以“n”字母结束.另外,假设有一本英文字典,你可以用正则表达式搜索它的全部 ...
 - iOS 9应用开发教程之ios9中实现按钮的响应
			
iOS 9应用开发教程之ios9中实现按钮的响应 IOS9实现按钮的响应 按钮主要是实现用户交互的,即实现响应.按钮实现响应的方式可以根据添加按钮的不同分为两种:一种是编辑界面添加按钮实现的响应:另一 ...
 - 配置k8s dns
			
DNS (domain name system),提供域名解析服务,解决了难于记忆的IP地址问题,以更人性可读可记忆可标识的方式映射对应IP地址. Cluster DNS扩展插件用于支持k8s集群系统 ...
 - python list的应用
			
先看下面的操作 In [2]: lis = [(1,2),(3,4),(5,6)] In [3]: for a,b in lis: ...: if a == 1: ...: print (" ...
 - 【BZOJ 3661】 Hungry Rabbit (贪心、优先队列)
			
3661: Hungry Rabbit Time Limit: 100 Sec Memory Limit: 512 MBSec Special JudgeSubmit: 67 Solved: 4 ...
 - SPOJ7586 NUMOFPAL manacher算法
			
题目大意: 求一个串中有多少个回文子串 这..... 妥妥的模板题吧.... 对所有的$r[i] / 2$进行求和即可,其中,$r[i]$为以$i$为中心的回文半径 $r[i] / 2$怎么来的,画下 ...
 - PHP 5.5以上 使用 CURL 上传文件
			
PHP 5.5以上 使用 CURL 上传文件的代码: curl_setopt(ch, CURLOPT_POSTFIELDS, [ 'file' => new CURLFile(realpath( ...
 - 【POJ】1835:宇航员【模拟】【三维行走】
			
宇航员 Time Limit: 2000MS Memory Limit: 30000K Total Submissions: 7228 Accepted: 3050 Description 问 ...
 - bzoj 2300 动态维护上凸壳(不支持删除)
			
新技能GET. 用set保存点,然后只需要找前趋和后继就可以动态维护了. /************************************************************** ...