关键词:mysql8无法用navicat连接,navicat无法连接mysql8,mysql8,mysql8的加密方式

【1】mysql8 的坑 密码加密规则

  在MySQL 8.0.以上版本中,caching_sha2_password是默认的身份验证插件,而不是以往的mysql_native_password。

  有关此更改对服务器操作的影响以及服务器与客户端和连接器的兼容性的信息,请参阅caching_sha2_password作为首选的身份验证插件。

  (翻译自https://dev.mysql.com/doc/refman/8.0/en/caching-sha2-pluggable-authentication.html)


#如果您还没有配置,那么在配置文件中可以修改,修改配置文件并重启Mysql服务后,新建的用户就可以远程连接了。但现有用户仍然无法远程连接
[mysqld]
# 默认使用 mysql_native_password 插件认证
default_authentication_plugin=mysql_native_password

【2】远程无法连接

问题:创建好用户后,用windows系统本地开发环境 的 Navicatmysql 连接数据库, 提示密码错误。

  

   后来查到是加密方式问题。

解决办法

  (1)推荐使用

  -- 如果是现有用户

  alter user '用户名'@localhost IDENTIFIED WITH mysql_native_password by '你的密码';

  改为5.X 版本的 mysql_native_password , 但没有重新改用户密码,导致代码一直连接不上, 用 mysql_native_password 再更改一次密码搞定。

  -- 如果是新建用户

   create user 'root'@'%' identified with mysql_native_password by '你的密码'

【3】5.X版本与8.X版本的创建用户方式

  5.X 版本添加用户和授权可以同时进行: grant select,delete,insert,update on dbname.* to username@‘localhost’ identified by ‘password’; 一句话搞定。
  8.X 版本要先 创建用户, 再grant
    create user username identified by ‘password’; (坑在这里,默认密码加密方式跟5不一样了 )
    grant select,delete,insert,update on username@‘localhost’;

同类参考:mysql8.0 安装 修改密码 允许远程连接

mysql8无法用navicat连接(mysql8加密方式的坑)的更多相关文章

  1. navicat连接mysql8.0+版本报错2059

    ERROR 2059 : Authentication plugin 'caching_sha2_password' cannot be loaded 问题: 连接Docker启动的mysql出现:E ...

  2. Navicat连接Mysql8.0.17出现1251错误 / 或者Navicat Premium出现2059错误

    Navicat连接Mysql8.0.17出现1251错误 重装了电脑之后,好多软件出了问题,经过一系列的插件安装,mysql终于安装好了 但是Navicat又抽筋了~~~额(⊙o⊙)... 在网上查的 ...

  3. Navicat连接MySQL8+时出现2059报错

    当我们连接时,会报2059错误 在用navicat连接MySQL8+时会出现2059错误,这是由于新版本的MySQL使用的是caching_sha2_password验证方式,但此时的navicat还 ...

  4. Navicat连接MySQL8.0亲测有效

    今天下了个 MySQL8.0,发现Navicat连接不上,总是报错1251: 原因是MySQL8.0版本的加密方式和MySQL5.0的不一样,连接会报错. 试了很多种方法,终于找到一种可以实现的: 更 ...

  5. Navicat连接mysql8出现1251错误

    我的博客:www.yuehan.online   因为加密方式的问题,在使用mysql8.0的时候需要修改加密规则才能连接navicat. 打开cmd,输入以下命令: ALTER USER 'root ...

  6. navicat连接mysql8报错,错误提示为1251,原因及解决步骤

    一.错误原因: MySQL8.0版本的加密方式和MySQL5.0的不一样,连接会报错. 二.解决步骤: 1.在linux虚拟机上登录mysql 2.更改加密方式: ALTER USER 'root'@ ...

  7. (转)Navicat连接MySQL8.0亲测有效

    转:https://www.cnblogs.com/shiysin/p/shiysin.html 今天下了个 MySQL8.0,发现Navicat连接不上,总是报错1251: 原因是MySQL8.0版 ...

  8. MySQL 使用Navicat连接MySQL8出现1251错误

    安装了MySQL8.x.x后使用Navicat连接总是出现1251错误,故在此记录一下解决方法. 错误提示 1251-Client does not support authentication pr ...

  9. 使用navicat连接mysql8.0.12版本 出现client does not support。。。解决办法

    navicat版本的问题 出现连接失败的原因:mysql8 之前的版本中加密规则是mysql_native_password,而在mysql8之后,加密规则是caching_sha2_password ...

随机推荐

  1. http学习--常用请求方法和响应状态码

    常用的http请求方法: GET方法:请求服务器资源,并返回 POST方法:向指定资源提交数据进行处理请求(比如说表单,上传文件等).数据被包含在请求体中.POST请求可能会导致新的资源建立或已有资源 ...

  2. wx小程序知识点(一)

    一.微信小程序中的目录及文件 (1)project.config.json 用于开发者工具配置 主要用于设置项目是否开启https校验(setting.urlCheck) (2) App.js 设置全 ...

  3. jquery preventDefault()方法 语法

    jquery preventDefault()方法 语法 作用:preventDefault() 方法阻止元素发生默认的行为(例如,当点击提交按钮时阻止对表单的提交).大理石平台价格 语法:event ...

  4. jquery dblclick()方法 语法

    jquery dblclick()方法 语法 作用:当双击元素时,会发生 dblclick 事件.当鼠标指针停留在元素上方,然后按下并松开鼠标左键时,就会发生一次 click.在很短的时间内发生两次 ...

  5. python re.match与re.search的区别

    re.match只匹配字符串的开始,如果字符串开始不符合正则表达式,则匹配失败,函数返回None:而re.search匹配整个字符串,直到找到一个匹配. #!/usr/bin/python impor ...

  6. Word:表格前添加新行 + 删除表格后的空行

    本文适用于Word 2007 + Windows 7,造冰箱的大熊猫@cnblogs 2018/8/3 近日新学(百度到)两条新Word操作,记录下来以备查询 1.在表格前添加新行 场景:有没有遇到过 ...

  7. 4.JSP内置对象

    JSP内置对象,JSP提供了由容器实现和管理的内置对象,也可以称之为隐含对象,这些内置对象不需要通过 JSP页面编写来实例化,在所有的JSP页面中都可以直接使用,它起到了简化页面的作用. 在JSP中一 ...

  8. 【LOJ2604】「NOIP2012」开车旅行

    [题目链接] [点击打开链接] [题目大意] 从西到东的坐标轴\([1,n]\)上有\(n\)个海拔互不相同的城市,每两个城市之间的距离定义为\(dis(i,j)=|h_i-h_j|\) 小\(A\) ...

  9. HNOI2010 平面图判定(planar)

    题目链接:戳我 我怎么知道平面图有这个性质?? 对于一个平面图,它的边数不超过点数的\(3n-6\) 所以可以直接把边数多的特判掉,剩下的图中边数和点数就是一个数量级的了. 因为这个图存在欧拉回路,所 ...

  10. RESTful规范与django编写restful接口

    一.什么是RESTful规范 ①REST与技术无关,代表的是一种软件架构风格,REST是Representational State Transfer的简称,中文翻译为“表征状态转移” ②REST从资 ...