Настройки, позволяющие другим ПК подключаться к базе данных PostgreSQL (версия для Windows)

Страница обновлена :
Дата создания страницы :

Операционная среда

PostgreSQL
  • PostgreSQL 15
Windows (сервер)
  • Windows Server 2019
Windows (клиент)
  • Windows 11

Необходимые условия

Виндоус
  • Windows Server 2019
  • Windows Server 2016
  • Другие версии могут работать, но официально не поддерживаются.

брандмауэр

В Windows брандмауэры запрещают подключения, отличные от стандартных портов. Он должен быть настроен на возможность подключения через порт для подключения к PostgreSQL.

После входа в серверную среду Windows введите «брандмауэр» в меню «Пуск» и выберите Откройте брандмауэр Защитника Windows с расширенной безопасностью.

Когда откроется экран, выберите «Правила входящего трафика» в меню слева и нажмите «Новое правило...» в меню справа.

В поле Тип правила выберите Порт.

В поле Протокол и порт выберите TCP в качестве протокола. В качестве порта введите значение по умолчанию 5432. Если вы указали другой номер порта в установке PostgreSQL, введите этот номер порта.

В поле «Действие» выберите «Разрешить подключение».

В разделе «Профиль» отметьте галочками «Домен» и «Частный». Я думаю, что маловероятно, что вы позволите доступ к базе данных в "общедоступной" среде, которая позволит неуказанным лицам получить к ней доступ.

Введите необязательное имя и описание. Пожалуйста, введите его, чтобы было легко понять цель открытия порта.

После добавления он появится в списке.

postgresql.conf

Проверьте настройки в postgresql.conf. Я не думаю, что вам нужно менять его в версии 15.

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

C:\Program Files\PostgreSQL\15\data\postgresql.conf

listen_addresses Найдите вызываемый параметр. Менять его не нужно, если он установлен следующим образом:

listen_addresses = '*'

pg_hba.conf

По умолчанию доступ к базе данных возможен только из локальной среды.

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

C:\Program Files\PostgreSQL\15\data\pg_hba.conf

Существует вероятность того, что вы допустите ошибку при ее исправлении, поэтому, пожалуйста, скопируйте и сделайте резервную копию файла перед его изменением на всякий случай.

Если вы прокрутите вниз, то найдете следующие строки: Это указывает на то, что доступ к IPv4 возможен только локально.

# TYPE  DATABASE        USER            ADDRESS                 METHOD
  :
host    all             all             127.0.0.1/32            scram-sha-256
  :

Установите этот АДРЕС в один или диапазон, чтобы к нему можно было получить доступ с других компьютеров. Заданное значение зависит от создаваемой сети. Если вы не уверены, пожалуйста 0.0.0.0/0 , разрешите all with или samenet type, чтобы разрешить весь диапазон той же сети, что и сервер.

Примеры конфигураций

# TYPE  DATABASE        USER            ADDRESS                 METHOD
  :
host    all             all             192.168.0.0/24          scram-sha-256
  :

Перезапустите службу

pg_hba.conf Эти конфигурационные файлы считываются только при запуске PostgreSQL, поэтому вам необходимо перезапустить службу. Кстати, он загружается при запуске PostgreSQL, поэтому если вы перезагрузите Windows, он будет загружен в это время.

Открыв меню «Пуск», введите «службы», чтобы запустить его.

Найдите и выберите "postgresql-x64-15 - PostgreSQL Server 15" из среднего списка. Обратите внимание, что название будет варьироваться в зависимости от версии. После выбора нажмите «Перезапустить службу» слева.

Проверка подключения с других ПК

Давайте посмотрим, сможем ли мы подключиться к базе данных с другого ПК. Информация о назначении подключения зависит от среды, поэтому здесь описана только процедура. На этот раз я использую pgAdmin для подключения, но я думаю, что вы также можете подключиться к другим инструментам доступа к базе данных.

После запуска pgAdmin на клиентском ПК, отдельном от сервера базы данных, щелкните правой кнопкой мыши «Серверы» и выберите «Зарегистрировать > сервер...».

На вкладке Общие имя должно быть именем, которое поможет вам идентифицировать сервер.

Выберите вкладку Подключение. Введите "Имя/адрес хоста", "База данных обслуживания", "Имя пользователя" и "Пароль". Если вы не хотите вводить пароль каждый раз, включите функцию «Сохранить пароль». Кстати, pdAdmin может не иметь возможности разрешить имя Host, поэтому в таком случае укажите IP-адрес напрямую.

Заполните остальные поля ввода по мере необходимости. Когда все будет готово, нажмите кнопку «Сохранить».

Если вы можете подключиться к базе данных целевого сервера, проверка завершена.