Когда я использую CLI для подключения к моей базе данных, все работает нормально.Postgresql: Я могу соединиться с командной строкой, но не с узлом-postgres
psql dbname postgres
psql спросить меня, что у меня установлен пароль (с ALTER), и я подключился.
В моем файле pg_hba.conf я получаю следующую строку:
local all postgres md5
Но когда я пытаюсь то же самое, используя узел-Postgres, я всегда получаю ошибку:
could not connect to postgres { [error: Ident authentication failed for user "postgres"]
Код Я использую basic (допустим, мой пароль - mypwd)
var pg = require('pg');
var conString = "postgres://postgres:[email protected]/database";
var client = new pg.Client(conString);
client.connect(function(err) {
if(err) {
return console.error('could not connect to postgres', err);
}
client.query('SELECT NOW() AS "theTime"', function(err, result) {
if(err) {
return console.error('error running query', err);
}
console.log(result.rows[0].theTime);
//output: Tue Jan 15 2013 19:12:47 GMT-600 (CST)
client.end();
});
});
У вас есть идеи?
[EDIT: Мой полный pg_hba.conf]
# TYPE DATABASE USER ADDRESS METHOD
# "local" is for Unix domain socket connections only
local all postgres md5
# IPv4 local connections:
host all all 127.0.0.1/32 ident
# IPv6 local connections:
host all all ::1/128 ident
Странно, но ваш код nodejs пытается подключиться к базе данных с помощью идентификатора aut-method, а не md5. Можете ли вы добавить полный pg_hba.conf к своему сообщению? –