egg-sequelize连接数据库报错

EGG.JS 专栏收录该内容
1 篇文章 0 订阅

egg-sequelize连接数据库报错

egg的文档写错了一个地方,经过不断的实验,花了很久的时间才改正这个配置大坑,简直是太坑了
文档中配置如下config/config.default.js:

config.sequelize = {
  dialect: 'mysql',
  host: '127.0.0.1',
  port: 3306,
  database: 'egg-sequelize-doc-default',
};

按照上面这样配置的话一直报一个错误,SequelizeAccessDeniedError: ER_ACCESS_DENIED_ERROR: Access denied for user ‘root’@‘localhost’ (using password: YES)

这个错误从字面意思上看是数据库自身的配置的问题,比如不允许远程登陆等,但是即使数据库配置修改完成后还是一样的错误,特别是如果配置的数据库ip并不是本地的时候,你会发现怎么报的错还是报的本地ip数据库连接失败?实际的原因是因为,自己配置的数据库信息并没有生效。应该像下边这样配置

config.sequelize = {
  dialect: 'mysql',
  host: '127.0.0.1',
  port: '3306',
  database: 'egg-sequelize-doc-default',
};

不知道大家注意没有,port这项值一定要写成字符串形式的,改成 这样后就可以访问了,就是这么一个简简单单的修改,绝对是个大坑,竟然花了我一天的时间,刚开始用nodejs还是经验不足,像个 无头苍蝇一样,记录一下,希望给更多碰到同样问题的朋友有所帮助。

后记:发现成功运行后,如果再吧端口号改回去竟然神奇的成功运行了,我都晕了,到底是为什么呢?人品?还是玄学?确确实实的发生了,还是记录下来吧,说不定真的有一样衰的兄弟。

  • 0
    点赞
  • 0
    评论
  • 0
    收藏
  • 一键三连
    一键三连
  • 扫一扫,分享海报

©️2021 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值