• navicat for mysql 链接时报错:1251-Client does not support authentication protocol requested by server


    客户端使用navicat for mysql。本地安装了mysql 8.0.18。但是在链接的时候提示:

     主要原因是mysql服务器要求的认证插件版本与客户端不一致造成的。

    mysql8.0以后的使用的plugin是caching_sha2_password,必须使用支持此插件的客户端版本。

    plugin的作用之一就是处理后的密码格式和长度是不一样的,类似于使用MD5加密和使用base64加密一样对于同一个密码处理后的格式是不一样的。

    解决方法是将root的plugin改成mysql_native_password。相当于降了一级。

    1、登录数据库 mysql -u root -p

    2、查看用户信息

    select host,user,plugin,authentication_string from mysql.user;

    host为 % 表示不限制ip; localhost表示本机使用 ; plugin非mysql_native_password 则需要修改密码

    3、修改用户密码

    ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '你设置的密码'; 

    更新用户的密码 root用户密码为newpassword或者改成其他密码都可以

    注意#:可能会报错ERROR 1396 (HY000): Operation ALTER USER failed for ‘root’@’%’,需要注意你上图列表中 user 项中的 root 是% 还是localhost; 如果是localhost则将上述语句改成ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '你设置的密码';

    配置成功!!!!!

  • 相关阅读:
    C#中的语言记忆功能
    C#中 文件的打开及保存
    无边框窗体设置
    Windows获取浏览器中存储的明文密码
    (CVE-2020-17530)Struts2 S2-061漏洞复现
    (CVE-2020-14882​&14883)Weblogic RCE复现
    内网渗透学习-信息收集篇
    Spring Boot Actuator H2 RCE复现
    Linux解压文件
    Windows本地提权
  • 原文地址:https://www.cnblogs.com/h-z-y/p/14266514.html
Copyright © 2020-2023  润新知