2016-03-15 3 views
-1

Я читал, что для того, чтобы включить удаленный доступ к db postgres, нужно изменить pg_hba .conf, чтобы добавить запись проверки подлинности клиента, а также изменить адрес прослушивания в postgresql.conf. Подробности: here.Я пытаюсь получить доступ к postgres db удаленно, но служба postgres не запускается после изменения pg_hba.conf и postgresql.conf

После того, как я сделаю эти две вещи, моя служба postgres не запустится. Вот мой журнал:

2016-03-14 20:10:48 WET LOG: invalid IP mask "trust": Unknown host 
2016-03-14 20:10:48 WET CONTEXT: line 81 of configuration file "C:/Program Files/PostgreSQL/9.5/data/pg_hba.conf" 
2016-03-14 20:10:48 WET FATAL: could not load pg_hba.conf 

Линия 81, где я добавил свою учетную запись аутентификации клиента.

Когда я пытаюсь запустить службу, достаточно ли использовать учетную запись локальной системы или мне нужно войти в систему? Нужно ли мне настраивать что-то с ролями групп и рольми входа в приложении postgresql? Наконец, если это имеет значение, db размещается на экземпляре Google Compute Engine.

+0

Я думаю, что вы должны размещать строки, которые вы добавили в pg_hba.conf. Возможно, postgresql.conf. Конечно, скрыть все, что нужно скрыть. Он жалуется на ваш синтаксис, или это может быть проблема с окончанием строки. – ManoDestra

ответ

2

От ошибки вы получаете, ясно, что вы сделали изменения в postgresql.conf от:

listen_addresses = 'localhost' 

к:

listen_addresses = '*' 

правильно.

Вопрос тогда в pg_hba.conf, где вы должны иметь:

host all   all   192.168.101.20/24 trust 

ты уверен, что вы не поставить что-то вроде:

host all   all   192.168.101.20/trust 

или

host all   all   192.168.101.20/ trust 

или

host all   all   192.168.101.20 trust 

24 - это IP-маска, то есть какая часть ip будет использоваться в качестве фильтра. Маска 24 означает, что любой хост с ip 192.168.101.xxx будет принят. Маска 32 ограничивает доступ к одному ip.

Кажется, система говорит, что он находит доверие как IP МАСКА ...

С уважением

+0

Запись аутентификации клиента, которую я добавил в pg_hba.conf, похож на последний, который у вас есть. У него не было маски IP. Я добавил маску IP, и теперь я могу перезапустить службу. Однако сценарий, который я использую для удаленного доступа к db, по-прежнему возвращает ту же ошибку, но это может быть отдельной проблемой. – duuug

+0

@duuug Я знаю, что ваше сообщение довольно старое, но я столкнулся с той же проблемой. Я изменил маску, как сказано здесь, но мой сценарий по-прежнему дает мне ошибку. Как вы это решили? –