navicat连接mysql出现2059错误的解决方法

安装navicat之后新建连接出现了2059的错误

网上查询过后,发现这个错误出现的原因是在mysql8之前的版本中加密规则为mysql_native_password,而在mysql8以后的加密规则为caching_sha2_password。

解决此问题有两种方法,一种是更新navicat驱动来解决此问题,一种是将mysql用户登录的加密规则修改为mysql_native_password。;根据网上大部分建议采取了第二种方式:

1.打开doc窗口win+d输入cmd打开

进入mysql sever安装bin目录输入

mysql -u root -p

输入root用户的密码

2.选择数据库

输入

use mysql

3.查看加密的规则

输入

select Host,User,plugin from mysql.user;

加密方式是新的加密方式

4.更改回原来的加密方式

输入

ALTER USER ‘root‘@‘localhost‘ IDENTIFIED WITH mysql_native_password BY‘root用户的密码‘;

刷新

FLUSH PRIVILEGES;

5.再次查看加密方式

select Host,User,plugin from mysql.user;

6.现在再用navicat去连接数据库就ok了

原文地址:https://www.cnblogs.com/manmanchanglu/p/11788235.html

时间: 2024-08-15 03:47:29

navicat连接mysql出现2059错误的解决方法的相关文章

Java 使用Navicat连接MySQL出现2059错误

今天使用navicat链接mysql的时候报了2059的错误,找了很久才找到解决方法,这里记录一下.出现2059这个错误的原因是在mysql8之前的版本中加密规则为mysql_native_password,而在mysql8以后的加密规则为caching_sha2_password.通过网络查找发现我们可以将mysql用户登录的加密规则修改为mysql_native_password.下面说下具体步骤: 打开terminal(Mac为例) 输入mysql -uroot -p登陆mysql,如果提

"客户端无法连接到远程计算机"错误的解决方法

问题: 客户端无法连接到远程计算机. 可能没有启用远程连接或者计算机太忙不能接受新的连接. 也可能是网络问题阻止连接.请稍后重新尝试连接. 如果问题仍然存在 请与管理员联系. 解决方法: 1.首先确认远程登陆的服务是打开的,也就是Remote Desktop Services(Windows xp里面是Terminal Services)服务:右键我的电脑--管理--服务,找到Terminal Services服务,启动这个服务即可 2.右键我的电脑--属性--远程,勾选“允许用户远程登陆到服务

MySQL中的错误及解决方法

1. 修改密码提示 ERROR 1054 (42S22): Unknown column ''password'' in ''field list'' 错误原因:mysql数据库下已经没有password这个字段了,password字段改成了authentication_string. 解决方法: 从Mysql解压路径中找到my.ini配置文件,将其中的skip-grant-tables注释去掉,如果没有就自己加上去(一般都有的),如图: 在mysql命令行下执行以下命令(password修改为

Navicat连接Oracle数据库报错ORA-28547解决方法

先说明下我机器的环境: 1.Win10 - 64bit 2.Navicat Premium_11.2.7  - 64bit 3.未安装Oracle数据库(包括Client也未安装) 解决方法: 1.下载 Instant Client 包 [注意:网络很多帖子都是说不管机器是32位还是64位都必须下载 32位的 Instant Client 包,Navicat 官方也是这么说的,很多人也说问题解决了...] [划重点:但是我下载了32位的就是不行,绝望之际最后抱着试试看的心情下载了64位的包,居然

远程桌面连接MySQL遇到的问题及解决方法总结

背景提要:想用Delphi做一个可以连接Mysql数据库的桌面应用程序.其中遇到了一些让自己很苦恼的问题.因为自己是新手,Delphi用的不熟,FireDAC这个连接数据库里控件更是没有接触过,对安装在CentOS上的MySQL更是一知半解.弄了半天,做出来的东西就是连接不上数据库.搞得一时间很头大.但最后还是找到了问题所在,都是处在了MySQL服务器设置上了. 问题一:MySQL服务器的端口没有打开.3306的端口不是默认打开的.需要在/etc/sysconfig/iptables配置文件中添

virtualbox虚拟机中mysql远程连接登陆报2003错误的解决方法

最近在virtualbox中安装了Ubuntu 14,配置了一个mysql server,设置的桥接网络模式.在其他电脑连接的时候,总是报2003错误.开始以为是localhost没有置换为%,运行update语句将其置换,依然不行.后来发现是因为mysql的默认配置文件/etc/mysql/my.cnf 中有一行: bind-address            = 127.0.0.1 就是说,默认绑定了ip,只限本机访问.将本行加#注释掉,远程访问正常.

Navicat 连接MySQL数据库 报错2059 - authentication plugin 'caching_sha2_password'的解决办法

#在数据库的命令行中输入以下代码即可解决,密码必须要修改 可以再次执行将密码改回来. use mysql; ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password'; Navicat 连接MySQL数据库 报错2059 - authentication plugin 'caching_sha2_password'的解决办法 原文地址:https://www.cnblogs.com/liuha

1130 - Host'xxx.xxx.xxx.xxx' is not allowed to connect to this MySQL server解决Navicat连接MySQL报错

最近使用Navicat for MySQl访问远程mysql数据库,出现报错,显示"1130 - Host'xxx.xxx.xxx.xxx' is not allowed to connect to this MySQL server".解决办法如下: 方法/步骤 首先看报错窗口. 经查阅,错误原因是:本地IP(xxx.xxx.xxx.xxx)没有访问远程数据库的权限. 于是下面开启本地IP(xxx.xxx.xxx.xxx)对远程mysql数据库的访问权限. 首先远程连接进入服务器,在

使用navicat连接mysql连接错误:Lost connection to Mysql server at 'waiting for initial communication packet'

使用navicat时,报错截图如下: 原因分析: mysql开启了DNS的反向解析功能,这样mysql对连接的客户端会进行DNS主机名查找. mysql处理客户端解析过程: 当mysql的client连过来的时候,服务器会主动去查client的域名. 首先查找 /etc/hosts 文件,搜索域名和IP的对应关系. 如果hosts文件没有,则查找DNS设置,进行DNS反向解析,直到timeout连接失败. mysql的DNS反向解析: mysql接收到连接请求后,获得的是客户端的ip,为了更好的