Node.js操作MySQL8.0数据库无法连接的问题解决
作者:丶无殇
使用node.js连接数据库MySQL 8时候,显示报错 ER_NOT_SUPPORTED_AUTH_MODE,本文就来介绍一下解决方法,感兴趣的可以了解一下
报错内容
使用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> alter user 'root'@'localhost' identified by '123456'; Query OK, 0 rows affected (0.02 sec)
这里的“123456”是你自己的密码
解决方法
直接数据库工具里面修改加密方式mysql_native_password:
或者通过指令方式修改:
mysql> alter user 'root'@'localhost' identified with mysql_native_password by '123456'; Query OK, 0 rows affected (0.01 sec)
数据库连接和关闭都成功,连接问题解决
到此这篇关于Node.js操作MySQL8.0数据库无法连接的问题解决的文章就介绍到这了,更多相关Node MySQL8.0无法连接内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!