今天,我将我的应用程序推到heroku上,我用cleardb创建数据库,使用软件(navicat premium)来配置它来创建表。
我启动了我的程序,它在本地运行得很好,当我试图访问我的数据库时,我会得到以下错误:
'xxxxxxxx'@'ip-xx-xx-xx-xxx.us-westxxxxxxxxxx‘:拒绝用户ER_ACCESS_DENIED_ERROR访问(使用密码: YES)
我读过这可能是端口,但我定义它就像在navicat上一样。
这是我的配置:
connection: {
port : '3306',
host : 'us-westxxxxxxxxxx',
user : 'xxxxxxxx',
password : 'xxxxxxxx',
database : 'xxxxxxxx',
charset :'utf8'
}
我的配置很好,所以我真的不知道哪里有错误。
谢谢你的帮助!
发布于 2015-09-03 14:41:56
检查ClearDB的端点数据,因为您的端点url看起来与我所期望的大不相同。
主机是@之后的片段。
CLEARDB_DATABASE_URL => mysql://[username]:[password]@[host]/[database name]?reconnect=true
我注意到的一件事是,您指定了端口(我不这样做,而且它可以工作),并且将端口指定为字符串而不是数字,所以如果指定它,这可能就是原因。
最后:
我还建议您将这些数据存储在Heroku变量中,并使用env.process.VARIABLE_NAME,这样您就不需要在代码/源文件中保留任何密码等等。
https://stackoverflow.com/questions/29394582
复制相似问题