node连接mysql时报错Client does not support authentication protocol requested by server; consider upgrading MySQL client

尝试用node编写一个简单的登录接口,结果启动服务后请求接口出现了该错误。

其问题就是访问的身份验证协议过于落后,在node内安装的2.18.1 包。

解决:

先登录库。

use mysql;(mysql为名)

提示Database changed;

查询表中信息 ;

select user,host, from mysql.user
//这里查询的三项分别为,用户,主机地址,信息,可以知道校验的方式

node连接mysql时报错Client does not support authentication protocol requested by server; consider upgrading MySQL client

之后执行以下语句

 alter user ''@'%' identified by '' password expire never; 
// password expire never 是mysql8之后的新密码 

 alter user 'root'@'%' identified with mysql_native_password by 'password';
//password是自己新修改的密码, mysql_native_password则是另一种密码校验方式.(具体原理我也不知道)

 flush privileges;
//再次刷新一下权限配置。

  node连接mysql时报错Client does not support authentication protocol requested by server; consider upgrading MySQL client

修改好了,再使用node访问接口,成功拿到数据库中数据。

给TA打赏
共{{data.count}}人
人已打赏
数据库

Linux安装mysql

2023-11-18 14:32:43

数据库

实例讲解数据库的定义重载函数

2023-11-18 14:32:45

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索