Подтвердить что ты не робот

Как разрешить удаленный доступ к базе данных PostgreSQL

У меня есть PostgreSQL 9.2, установленный в Windows 7, и у меня установлен Windows XP на виртуальной машине, как мне подключить эти две базы данных и разрешить удаленный доступ для добавления/изменения базы данных из обеих систем?

4b9b3361

Ответ 1

Чтобы удаленно получить доступ к базе данных PostgreSQL, вы должны установить два основных файла конфигурации PostgreSQL:

postgresql.conf
pg_hba.conf

Ниже приведено краткое описание того, как вы можете их установить (обратите внимание, что следующее описание является чисто ориентировочным: чтобы безопасно настроить машину, вы должны быть знакомы со всеми параметрами и их значениями)

Прежде всего настройте службу PostgreSQL для прослушивания на порту 5432 на всех сетевых интерфейсах в Windows 7:
откройте файл postgresql.conf (обычно расположенный в C:\Program Files\PostgreSQL\9.2\data) и задайте параметр <

listen_addresses = '*'

Проверьте сетевой адрес виртуальной машины WindowsXP и задайте параметры в файле pg_hba.conf(находящийся в том же каталоге postgresql.conf), чтобы postgresql мог принимать соединения с хостов виртуальных машин.
Например, если компьютер с Windows XP имеет 192.168.56.2 IP-адрес, добавьте в файл pg_hba.conf:

host all all 192.168.56.1/24 md5

таким образом, PostgreSQL будет принимать соединения со всех хостов в сети 192.168.1.XXX.

Перезапустите службу PostgreSQL в Windows 7 (Services- > PosgreSQL 9.2: щелкните правой кнопкой мыши и перезапустите сеанс). Установите pgAdmin на машину Windows XP и попробуйте подключиться к PostgreSQL.

Ответ 2

Я использую PostgreSql 9.5.1, пожалуйста, следуйте конфигурации удара:

  • открыть hg_hba.conf в pgAdmin pgAdmin
  • выберите свой путь и откройте его, затем добавьте настройку pg_hba.conf
  • перезапустить службу postgresql

Ответ 3

Вы должны добавить это в свой pg_hba.conf и перезапустить PostgreSQL.

host all all 192.168.56.1/24 md5

Это работает с включенным адаптером VirtualBox и хост-адаптером. Если вы не используете Virtualbox, вам нужно заменить IP-адрес.

Ответ 4

В дополнение к приведенным выше ответам, предлагающим изменение конфигурационных файлов pg_hba.conf и postgresql.conf и перезапуск службы PostGreSQL, на некоторых компьютерах с Windows 7 также может потребоваться включить порт (например, 5432) для входящего трафика TCP который может получить сервер PostGreSQL.

Если это требуется на вашем компьютере, откройте брандмауэр Windows и добавьте правило для этого порта (например, 5432). Теперь попробуйте снова подключиться к pgAdmin на клиентском компьютере.

Ответ 5

После установки listen_addresses = '*' в postgresql.conf

Отредактируйте файл hba_file.conf и добавьте следующую запись в самом конце файла:

host    all             all              0.0.0.0/0                       md5
host    all             all              ::/0                            md5

Для нахождения конфигурационных файлов эта ссылка может вам помочь.