MySQL8.0修改用户密码验证

2023-10-29

问题:

MySQL升级到8.0,客户端或者连接器没有升级到8.0,连接时出现吧报错:

Authentication plugin 'caching_sha2_password' is not supported

查看当前用户信息:

mysql> select host,user,plugin,authentication_string,password_expired,password_last_changed,password_lifetime,account_locked,Create_role_priv,Drop_role_priv,Password_reuse_history,Password_reuse_time,Password_require_current FROM MYSQL.user whereuser='root'\G;
*************************** 1. row ***************************
                    Host: localhost
                    User: root
                  plugin: caching_sha2_password
   authentication_string: $A$005$3^3*[&!YiY\Ft]HlTE9I24QoS990EXKd3ANI.ePlavnWyt4fLyp7.Z1hh8
        password_expired: N
   password_last_changed: 2018-12-12 09:38:42
       password_lifetime: NULL
          account_locked: N
        Create_role_priv: Y
          Drop_role_priv: Y
  Password_reuse_history: NULL
     Password_reuse_time: NULL
Password_require_current: NULL
1 row in set (0.00 sec)

原因:

MySQL当前的身份验证插件不支持用户认证。

解决办法

身份验证不通过,修改身份验证信息:临时更改验证插件为mysql_native_password

mysql> alter user 'root'@'localhost' identified with mysql_native_password by 'iris';
Query OK, 0 rows affected (1.85 sec)

重新连接数据库,可以正常登录。查看当前用户信息:

mysql> select host,user,plugin,authentication_string,password_expired,password_last_changed,password_lifetime,account_locked,Create_role_priv,Drop_role_priv,Password_reuse_history,Password_reuse_time,Password_require_current FROM MYSQL.user whereuser='root'\G;
*************************** 1. row ***************************
                    Host: localhost
                    User: root
                  plugin: mysql_native_password
   authentication_string: *72C26A280E81148FBC40D9D60BE74759464D93FA
        password_expired: N
   password_last_changed: 2018-12-12 09:27:04
       password_lifetime: NULL
          account_locked: N
        Create_role_priv: Y
          Drop_role_priv: Y
  Password_reuse_history: NULL
     Password_reuse_time: NULL
Password_require_current: NULL
1 row in set (0.00 sec)

原理:

查看当前用户身份验证插件

mysql>
mysql> SHOW VARIABLES LIKE 'default_authentication_plugin';
+-------------------------------+-----------------------+
| Variable_name                 | Value                 |
+-------------------------------+-----------------------+
| default_authentication_plugin | caching_sha2_password |
+-------------------------------+-----------------------+
1 row in set, 1 warning (0.00 sec)
mysql>

以上设置是MySQL 8.0 默认的身份验证插件,caching_sha2_password和sha_password插件比mysql_native_password提供安全的身份验证技术,caching_sha2_password比sha_password性能更好,所以caching_sha2_password被选定为MySQL8.0首选&默认的用户身份验证插件。

如果使用默认的身份认证插件时当前的客户端活着连接器不支持8.0的默认身份认证插件,可以修改此参数

[mysqld]
default_authentication_plugin=mysql_native_password

由于此参数是只读参数,只能在配置文件中进行修改,并且需要重启生效

或者启动时带上--default_authentication_plugin参数。

如果后面升级了客户端或者连接器到可以支持MySQL8.0时,想更换身份认证插件,也可以使用一下命令修改

mysql> alter user 'root'@'localhost' identified with caching_sha2_password by 'iris';
Query OK, 0 rows affected (0.18 sec)
mysql>

或者永久修改

[mysqld]
default_authentication_plugin=caching_sha2_password

参考自:

https://dev.mysql.com/doc/refman/8.0/en/upgrading-from-previous-series.html#upgrade-caching-sha2-password

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

MySQL8.0修改用户密码验证 的相关文章

随机推荐

  • 应用篇-Zabbix对端口的监控

    配置 主机 需要添加端口监控的ip 监控项 创建监控项 按照图内填入对应端口信息 端口监控项创建完成 端口的监控不仅仅是要端口的数据的数据 更需要的是一个触发的机制 当端口不在时 触发告警 通知对应的业务人员及时处理 接下来是触发器的设置
  • Spring-01,Spring入门介绍,核心容器,工程搭建,控制反转与依赖注入,Bean的配置(未完)

    Spring框架 1 什么是Spring Spring框架是一个开放源代码的J2EE应用程序框架 由Rod Johnson发起 是针对bean的生命周期进行管理的轻量级容器 lightweight container Spring解决了开发
  • idea 自动补全返回值,自动补全变量名称和属性名称

    这种时候我们想快速补全返回值和对象 直接点击 ctrl alt v 便可
  • 微软AJAX CDN功能简介 免费AJAX缓存支持

    http dotnet chinaitlab com ASPNET 815224 html 微软官方资料 http www asp net ajaxlibrary cdn ashx 微软推出了一个新的AJAX工具 AJAX CDN 这个工具
  • 长沙到底有没有互联网?

    爱学习 勤思考 学数学 玩魔术 欢迎点击头部蓝字关注MatheMagician 这里有你要的奇迹 2018年7月25日 湖南省长沙市 鸟瞰九龙仓长沙国际金融中心 作者 小谦 责编 胡巍巍 在中国互联网行业 湖南人是一股不容忽视的力量 谈及湘
  • 操作系统四大特征

    大家好 我的文章能让您看到 我非常的荣幸 我今天将为大家简单的介绍操作系统的四大基本特征 常见的操作系统 Windows Linux DOS Unix MAC等 如图所示 这是操作系统最基本的特征 接下来 我们一一分析和理解 一 操作系统四
  • 浏览器恶意域名拦截插件

    Net Shield crx插件可有效识别浏览器访问的恶意域名 如成人类网站 钓鱼网站等 可用于家长控制等场景 避免用户在不知情的情况下因访问恶意域名而感染木马等恶意程序 使用方法 通过浏览器扩展插件功能添加该插件即可 下载地址 http
  • 分享一个很容易实现的某大学的结构光源码【DIY自己的三维扫描仪】

    这个分享是一个大学做的结构光的代码 用一个usb相机 再加一个投影仪 完全按照说明配置opencv QT 还有一些库 只要配置好了 很容易跑通 代码和UI也很好 也可以优化成自己想要的那种 里面资料很全 非常适合不同高度的人来学习 看完觉得
  • ES6之map()方法

    map 方法 map 映射 即原数组映射成一个新的数组 map方法接受一个新参数 这个参数就是将原数组变成新数组的映射关系 function myfun 1 arr var array arr map item gt array push
  • ubuntu18.04LTS安装2080ti显卡驱动

    NVIDIA驱动安装 首先需要去nvidia官网下载对应的驱动 run文件 我下载的最新驱动450 57 一 禁用开源驱动 sudo gedit etc modprobe d blacklist conf 在文件最后添加两行 保存并关闭文件
  • 国内90%以上的 iOS 开发者,对 APNs 的认识都是错的

    2016 04 26 06 39 编辑 cocopeng 分类 iOS开发 来源 iOS程序犭袁的简书 本文为投稿文章 作者 iOS程序犭袁 博客 前言 APNs 协议在近两年的 WWDC 上改过两次 2015年12月17日更是推出了革命性
  • 报错unexpected ‘list‘ (T_LIST), expecting identifier (T_STRING)

    报错unexpected list T LIST expecting identifier T STRING 应该是控制器方法名称与系统内置函数名重复 修改方法名后问题暂时解决
  • 关于Unity3d中OnGUI的用法-显示对话框(刚开始学持续更新)

    系统调用 OnGUI 来渲染和处理 GUI 事件 这意味着每帧可能会多次调用 OnGUI 实现 每个事件调用一次 有关 GUI 事件的更多信息 请参阅 Event 参考 如果 MonoBehaviour 的 enabled 属性设置为 fa
  • Python 中的__main__和__name__

    用 C 族语言 C C Java C 等 编写的程序 需要main 功能来指示执行的起点 另一方面 在 Python 中 没有main 函数的概念 因为它是一种基于解释器的语言 同样可以在交互 Shell中使用 扩展名为 py的 Pytho
  • 【华为OD机试 2023】快递投放问题(C++ Java JavaScript Python)

    华为od机试题库 华为OD机试2022 2023 C Java JS Py https blog csdn net banxia frontend category 12225173 html 华为OD机试2023最新题库 更新中 C Ja
  • css实现下拉菜单

    这次css实现下拉菜单是仿照小米官网的一个小效果 如下 css实现下拉菜单 主要用到的知识点有用到伪元素来实现小箭头的点缀 还有transition属性实现下拉菜单过渡出现 不是直接崩出来的那种 提高用户体验 可以看到这个二维码出来的时候还
  • java什么是面向过程_Java 基础(一) -- 面向对象

    面向过程和面向对象的区别 什么是面向过程 pop 面向过程 Process oriented programming 是一种以事件为中心的编程思想 就是分析出解决问题所需要的步骤 然后用函数把这些步骤全部实现 然后按照顺序依次调用 什么是面
  • [NOIP1998 普及组]幂次方

    NOIP1998 普及组 幂次方 题目描述 任何一个正整数都可以用 2 2 2 的幂次方表示 例如 137 27 23 2 0 同时约定方次用括号来表示 即 a b a b
  • 智能小车运行及测速原理

    光电码盘测速原理 如何求解小车速度参数 大小与方向 测量速度方向的方法 根据A B两相脉冲的超前滞后关系确定电机旋转方向 假定A相超前于B相时 为电机正方向 则当A相滞后于B相 当前电机为反向旋转 普通测量速度大小的方法 单位时间内采集的脉
  • MySQL8.0修改用户密码验证

    问题 MySQL升级到8 0 客户端或者连接器没有升级到8 0 连接时出现吧报错 Authentication plugin caching sha2 password is not supported 查看当前用户信息 mysql gt