如何使用pg-promise连接到没有密码的Postgres数据库?

时间:2016-03-04 23:14:13

标签: node.js postgresql pg-promise

我正在尝试初始化与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 ='*'

2 个答案:

答案 0 :(得分:3)

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

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

另请参阅:node-postgres get error connect ECONNREFUSED

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

答案 1 :(得分:0)

您可以通过here

中的Google搜索找到此信息

使用“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);