本文主要是介绍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
这是自己在我的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'
然后本地又报这个错误
ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
这个错误的含义是你的密码安全等级太低了。
这里的password的意思是你登录mysql使用的password帐号
- 报错原因
因为mysql版本较高,最新的加密方式node还不支持,之前在本地用phpMyadmin连接mysql也出现过这样的问题,当时也是修改mysql密码保存方式,不过当时因为是本地电脑采用的是图形化界面解决的方式,只需要勾选一个按钮重启就好了。
欢迎关注本人公众号:前端工程师发展之路
这篇关于node-mysql连接mysql失败Error: ER_NOT_SUPPORTED_AUTH_MODE的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!