0

今天我在heroku上推送我的应用程序,我使用cleardb创建数据库,使用软件(navicat premium)进行配置以创建表。

我启动了我的程序,它在本地运行得很好,当我尝试访问我的数据库时,我收到了这个错误:

ER_ACCESS_DENIED_ERROR:访问被拒绝用户'xxxxxxxx'@'ip-xx-xx-xx-xxx.us-westxxxxxxxxxx'(使用密码:是)

我读过这可能是端口,但我像在 navicat 上一样定义它。

这是我的配置:

connection: {
      port      : '3306',
      host      : 'us-westxxxxxxxxxx',
      user      : 'xxxxxxxx',
      password  : 'xxxxxxxx',
      database  : 'xxxxxxxx',
      charset   :'utf8'
    }

我的配置很好,所以我真的不知道错误在哪里。

感谢您的帮助!

4

1 回答 1

0

检查 ClearDB 的端点数据,因为您的端点 url 看起来与我的预期截然不同。

主机是@之后的部分。

CLEARDB_DATABASE_URL => mysql://[username]:[password]@[host]/[database name]?reconnect=true

我注意到的一件事是您指定了端口(我不这样做并且它有效)并且您将端口指定为字符串而不是数字,所以如果您指定它,这可能就是原因。

最后:

我还建议您将其中一些数据存储在 Heroku 变量中并使用 env.process.VARIABLE_NAME 因此您不需要在代码/源文件中保留任何密码等。

于 2015-09-03T14:41:56.870 回答