4

我正在尝试初始化与我的 PG 数据库的连接:

    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),

但我不断得到:

错误:连接 ECONNREFUSED 172.20.0.3:5432

知道为什么吗?

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

4

2 回答 2

3

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

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

另请参阅:node-postgres 获取错误连接 ECONNREFUSED

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

于 2016-03-05T14:10:53.080 回答
0

你可以在这里通过谷歌搜索找到这个

使用“pg-promise”的示例:

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);
于 2016-03-05T03:21:40.080 回答