首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在MySQL中使用NodeJS服务器连接到OpenShift?

问如何在MySQL中使用NodeJS服务器连接到OpenShift?
EN

Stack Overflow用户
提问于 2016-03-27 21:48:03
回答 1查看 1K关注 0票数 0

我正在尝试使用Node JS服务器连接到OpenShift中的MySQL数据库。我有一个错误:

代码语言:javascript
复制
Error: connect ECONNREFUSED 127.0.0.1:3306
    at Object.exports._errnoException (util.js:870:11)
    at exports._exceptionWithHostPort (util.js:893:20)
    at TCPConnectWrap.afterConnect [as oncomplete] (net.js:1057:14)
    --------------------
    at Protocol._enqueue (D:\nodejs\node_modules\mysql\lib\protocol\Protocol.js:141:48)
    at Protocol.handshake (D:\nodejs\node_modules\mysql\lib\protocol\Protocol.js:52:41)
    at Connection.connect (D:\nodejs\node_modules\mysql\lib\Connection.js:123:18)
    at Object.<anonymous> (D:\nodejs\server.js:17:12)
    at Module._compile (module.js:409:26)
    at Object.Module._extensions..js (module.js:416:10)
    at Module.load (module.js:343:32)
    at Function.Module._load (module.js:300:12)
    at Function.Module.runMain (module.js:441:10)
    at startup (node.js:139:18)

这是我的代码:

代码语言:javascript
复制
var connection = mysql.createConnection({
  host     : process.env.OPENSHIFT_MYSQL_DB_HOST,
  user     : process.env.OPENSHIFT_MYSQL_DB_USERNAME,
  password : process.env.OPENSHIFT_MYSQL_DB_PASSWORD,
  port     : process.env.OPENSHIFT_MYSQL_DB_PORT,
  database : process.env.OPENSHIFT_APP_NAME
 });

connection.connect(function(err){
  if (err) {throw err;}
});

我读了很多关于这个错误的文章,但我没有找到解决方案。我可以使用ssh连接到MySQL,还可以检查这些环境变量。

主机为127.9.156.2,NODEJS_IP为127.9.156.1。端口为3306。PASS和USER也可以。

哪里有问题?

EN

回答 1

Stack Overflow用户

发布于 2016-03-27 22:40:39

这很可能是由两个不同的问题引起的。其中之一是端口错误或MySQL实例正在尝试连接到一个已经很忙的端口。如果这是导致它的原因,那么您需要更改此设置。

另一个问题是,默认情况下,MySQL只允许127.0.0.1连接。您必须进入MySQL的配置文件,并将其设置为允许其他主机连接,这里有一个指向他们的文档的链接,介绍如何做到这一点。http://dev.mysql.com/doc/refman/5.0/en/server-options.html#option_mysqld_bind-address。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36248055

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档