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

我试图初始化一个连接到我的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 ='*'

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

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

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

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

你可以在这里通过谷歌searchfind这个

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