2016-03-04 75 views
4

我试图初始化我的PG数据库这样的连接:如何使用pg-promise连接到没有密码的Postgres数据库?

pgp = require('pg-promise')({ 
    // Initialization Options 
}), 
cn = { 
    host: 'activity.postgres.activity', // server name or IP address; 
    port: 5432, 
    database: 'activity', 
    user: 'postgres', 
    password: '' 
}, 
db = pgp(cn), 

但我不断收到:

Error: connect ECONNREFUSED 172.20.0.3:5432

任何想法,为什么?

解决: 设置的listen_addresses = '*' 在postgresql.conf文件

回答

0

您可以通过在here

例谷歌搜索找到这个名称中使用 “PG-承诺”:

var pgp = require('pg-promise')(/*options*/); 

var cn = { 
    host: 'my_host', // server name or IP address; 
    port: 5401, 
    database: 'myDatabase', 
    user: 'myUser', 
    password: 'myPassword' 
}; 

var db = pgp(cn); 
// SELECT all rows with id = 111 in my_table 
db.one("SELECT * FROM my_table WHERE id=$1", 111) 
    .then(function (result) { 
     console.log(result); // print user result; 
    }) 
    .catch(function (error) { 
     console.log(error); // print why failed; 
    }); 

与其他的例子连接与使用 “PG” 模块Postgres数据库:

var Client      = require('pg').Client; 

var configServer      = { 
    user    : 'user', // if don't have user and pass then '' 
    password   : 'my_pass', 
    database   : 'my_database', 
    host    : 'my_host', 
    port    : 54103 // this is a example 
}; 
var client  = new Client(configServer); 
    client.connect(); 

// SELECT all rows in my_table 
var sql = "SELECT * FROM my_table"; 
client.query(sql, callback); 
+1

我不认为他需要在与服务器的连接断开时使用库的示例。 –

3

问题不在于您正在使用的库或密码。

该错误告诉您在该IP /端口上没有服务器可用。

参见:node-postgres get error connect ECONNREFUSED

即首先检查您可以通过PSQL连接到它。

+0

此问题已通过将postgresql.conf文件中的“listen_addresses”行更改为'*'来接受所有传入连接来解决。谢谢你指出我在正确的方向。 –

相关问题