node-mysql连接mysql失败Error: ER_NOT_SUPPORTED_AUTH_MODE

报错信息
{ Error: ER_NOT_SUPPORTED_AUTH_MODE: Client does not support authentication protocol requested by server; consider upgrading MySQL client
1
这是自己在我的linux机器上,安装了
mysql Ver 8.0.12 for Linux on x86_64 (MySQL Community Server - GPL)
这个版本,然后我本地使用node-mysql去连接数据库。报错的信息。
经过一连串的研究,终于解决了这个问题。

解决步骤
第一步谷歌
查到了 https://stackoverflow.com/questions/50093144/mysql-8-0-client-does-not-support-authentication-protocol-requested-by-server
这个答案,和我报错的步骤基本一样,按照这个进行操作,登录mysql使用这个
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password'
1
然后本地又报这个错误

ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
1
这个错误的含义是你的密码安全等级太低了。
这里的password的意思是你登录mysql使用的password帐号

报错原因
因为mysql版本较高,最新的加密方式node还不支持,之前在本地用phpMyadmin连接mysql也出现过这样的问题,当时也是修改mysql密码保存方式,不过当时因为是本地电脑采用的是图形化界面解决的方式,只需要勾选一个按钮重启就好了。
--------------------- 
作者:vieber 
来源:CSDN 
原文:https://blog.csdn.net/sufubo/article/details/82945318 
版权声明:本文为博主原创文章,转载请附上博文链接!

猜你喜欢

转载自blog.csdn.net/HansExploration/article/details/83825551