[英]Error: ER_ACCESS_DENIED_ERROR: Access denied for user. Unable to Connect to Remote Database using Node JS
[英]heroku node js cleardb mysql fail : ER_ACCESS_DENIED_ERROR: Access denied for user
今天,我在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'
}
我的配置很好,所以我真的不知道错误在哪里。
感谢您的帮助!
检查ClearDB的端点数据,因为端点URL看起来与我期望的截然不同。
主机是@之后的部分。
CLEARDB_DATABASE_URL => mysql://[username]:[password]@[host]/[database name]?reconnect=true
我注意到的一件事是,您指定了端口(我不这样做并且它可以工作),并且将端口指定为字符串而不是数字,因此,如果您指定它,这可能就是原因。
最后:
我还建议您将其中一些数据存储在Heroku变量中,并使用env.process.VARIABLE_NAME,这样就无需在代码/源文件中保留任何密码等。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.