SequelizeAccessDeniedError的原因和解决方式

  • Post author:
  • Post category:其他


在学习廖雪峰的使用

Sequelize

时,遇到了一个问题,搞了好久,问题如下:

failed: SequelizeAccessDeniedError: ER_ACCESS_DENIED_ERROR: Access denied for user ‘www’@’localhost’ (using password: YES)

(node:7512) UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 1): SequelizeAccessDeniedError: ER_ACCESS_DENIED_ERROR: Access denied for user ‘www’@’localhost’ (using password: YES)

(node:7512) UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 2): SequelizeAccessDeniedError: ER_ACCESS_DENIED_ERROR: Access denied for user ‘www’@’localhost’ (using password: YES)

最后发现是写mysql的时候

授权后没有flush privileges;

的原因。刚开始只写了第一句,没有写第二句。就出现了上面的错误。


解决方法:

用root登陆mysql之后,输入如下语句再运行就可以了。

grant all privileges on test.* to 'www'@'%' identified by 'www';
flush privileges;

其中第一句的意思:允许用户www从任何主机连到test数据库,并使用www作为密码。

第二句的意思:刷新MySQL的系统权限相关表,否则会出现拒绝访问。当然,还有一种



版权声明:本文为baidu_28479651原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。