2016-09-08 5 views
0

Я хочу иметь базу данных postgres на компьютере, которую я могу использовать с нескольких (внешних) компьютеров. Он будет действовать как пробный сервер для меня, оставив его, когда мне это нужно.Обслуживание базы данных postgres онлайн

Я исследовал, как это сделать, и выяснил, что мне пришлось пересылать службы postgres в Интернет. Postgres находится на порту 5432. Я вошел в свой маршрутизатор с опцией пересылки. Я открыл порт 5432, но не могу добавить postgres к списку услуг.

Есть ли причина для этого?

Собственно. Я обнаружил, что мне просто нужно адаптировать файл pg_hba.conf (только что начал пытаться). Я запускаю окна. Любые советы приветствуются, это не мой опыт. Я не понимаю, почему это сработает, если я просто адаптирую pg_hba.conf. Для игр или других сервисов, таких как игра, я должен открыть порт в маршрутизаторе. Или я должен сделать то и другое?

+1

Правильно, что вам необходимо перенаправить трафик порта 5432 на ваш маршрутизатор на внутренний IP-адрес вашего компьютера и порт 5432. Часто маршрутизаторы имеют выбор «Пользовательский» в раскрывающемся списке, где вы можете добавить свои собственные номера портов. Обратитесь к руководству вашего маршрутизатора. Не уверен на pg_hba.conf, но он не станет лизать разницу, если трафик не может попасть на компьютер. Итак, начните с маршрутизатора, затем обезьяну с конф. – JNevill

+0

Вам, скорее всего, нужно будет установить 'listen_addresses = '*'' в 'postgresql.conf', поскольку по умолчанию будет' localhost'; отредактируйте 'pg_hba.conf', чтобы разрешить внешние подключения * и * пересылать порт на маршрутизаторе. –

ответ

1

Из документации Postgres - аутентификация клиента контролируется конфигурационным файлом, который традиционно называется pg_hba.conf и хранится в каталоге данных кластера базы данных. (HBA означает аутентификацию на основе хоста.) Каждая запись указывает тип подключения, диапазон IP-адресов клиента (если это относится к типу подключения), имя базы данных, имя пользователя и метод аутентификации, которые будут использоваться для сопоставления подключений эти параметры.

Таким образом, для обеспечения доступа к другим компьютерам необходимо настроить свой pg_hba.conf. Вам также необходимо настроить маршрутизатор и брандмауэр настройки для разрешения входящих подключений к порту 5432.

0

Вот что вам нужно сделать

на изменение postgres.conf listen_address к:

listen_addresses = '*' 

и на pg_hba добавить это в конец файла

host all all 0.0.0.0/0 md5 

А также убедитесь, что порт пересылается на машине под управлением Postgres от маршрутизатора