Node.js操作MySQL8.0数据库无法连接


Node.js操作MySQL8.0数据库无法连接

原创:丶无殇  2023-10-07


报错内容

使用node.js连接数据库MySQL 8时候,报错ER_NOT_SUPPORTED_AUTH_MODE,并且提示Client does not support authentication protocol requested by server; consider upgrading MySQL client:客户端不支持服务器请求的身份验证协议;考虑升级MySQL客户端;

报错原因

最新的MySQL模块并未完全支持MySQL 8.0的caching_sha2_password加密方式,而MySQL 8.0中默认仍然是caching_sha2_password加密方式,因此用户认证不通过了。

如下查询:

mysql 复制代码
mysql> alter user 'root'@'localhost' identified by '123456';
Query OK, 0 rows affected (0.02 sec)

这里的"123456"是你自己的密码

解决方法

直接数据库工具里面修改加密方式mysql_native_password:

或者通过指令方式修改:

mysql 复制代码
mysql> alter user 'root'@'localhost' identified with mysql_native_password by '123456';
Query OK, 0 rows affected (0.01 sec)

数据库连接和关闭都成功,连接问题解决

相关推荐
codingWhat12 小时前
整理「祖传」代码,就是在开发脚手架?
前端·javascript·node.js
ServBay12 小时前
Node.js、Bun 与 Deno,2026 年后端运行时选择指南
node.js·deno·bun
倔强的石头_12 小时前
kingbase备份与恢复实战(二)—— sys_dump库级逻辑备份与恢复(Windows详细步骤)
数据库
码路飞19 小时前
Node.js 中间层我维护了两年,这周终于摊牌了——成本账单算完我人傻了
node.js
jiayou642 天前
KingbaseES 实战:深度解析数据库对象访问权限管理
数据库
None3212 天前
【NestJs】使用Winston+ELK分布式链路追踪日志采集
javascript·node.js
于眠牧北2 天前
MySQL的锁类型,表锁,行锁,MVCC中所使用的临键锁
mysql
Dilettante2582 天前
这一招让 Node 后端服务启动速度提升 75%!
typescript·node.js
Mr_li2 天前
NestJS 集成 TypeORM 的最优解
node.js·nestjs
UIUV3 天前
node:child_process spawn 模块学习笔记
javascript·后端·node.js