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

12 set 2022 2 min di lettura
Как настроить PostgreSQL для разрешения удаленных подключений
Indice dei contenuti

Введение

Реляционная база данных с открытым исходным кодом, основанная на объектах PostgreSQL, предоставляет пользователю реализацию SQL и обычно размещается в Linux. С PostgreSQL пользователи могут расширять систему, определяя типы персональных данных, функции и операторы.

PostgreSQL используется многими крупными компаниями для сохранения и архивирования своих данных для различных приложений и поддерживает различные программные интерфейсы, а также видео, текст и изображения. В этой статье мы сначала рассмотрим установку PostgreSQL на Ubuntu 20.04, а затем настроим ее для удаленного подключения.

Предпосылки

В этой статье предполагается, что в вашей системе уже есть сервер PostgreSQL. Если нет, используйте одну из ссылок ниже, чтобы установить сервер базы данных PostgreSQL в вашей системе.

  1. Установка PostgreSQL в Ubuntu 20.04
  2. Установка PostgreSQL на CentOS 8

Найдите файл конфигурации

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

sudo -u postgres psql -c "SHOW config_file;"
Output:

 config_file
 -----------------------------------------
 /etc/postgresql/13/main/postgresql.conf
 (1 row)

Вам необходимо изменить адрес прослушивания в файле конфигурации postgresql.conf, отображаемом в выводе команды. Кроме того, вам нужно изменить « pg_hba.conf » в том же каталоге, чтобы разрешить удаленный доступ.

Настройте PostgreSQL для разрешения удаленных подключений.

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

Настройте postgresql.conf:

Теперь нам нужно открыть файл и внести некоторые изменения, чтобы разрешить удаленное подключение. Чтобы открыть файл, вы должны использовать команду nano или вы можете запустить команду в терминале, который указан ниже:

sudo nano /etc/postgresql/13/main/postgresql.conf

Эта команда откроет этот файл, и в нем вам нужно будет найти «listen_addresses» и добавить следующую строку:

#listen_addresses = 'localhost'
 listen_address = '*'

Все, что вам нужно сделать, это изменить адрес прослушивания с localhost на «*» или добавить новую строку, как показано выше. Это позволит каждому IP-адресу быть подключенным к серверу базы данных, или, если вы хотите указать некоторые конкретные IP-адреса, вы можете ввести их с пробелами между каждым IP-адресом.

Настройте pg_hba.conf:

Чтобы пользователи, которых мы хотим подключить к базе данных, нам нужно внести изменения в файл «pg_hba.conf». Этот файл будет доступен в том же каталоге, что и выше.

Теперь откройте файл с помощью приведенной ниже команды:

sudo nano /etc/postgresql/13/main/pg_hba.conf

В файл нужно добавить следующие строки:

# TYPE DATABASE USER ADDRESS METHOD
 host all all 0.0.0.0/0 md5
 host all all:/0 md5

Сохраните файл конфигурации и закройте его. Теперь перезапустите базу данных, выполнив приведенную ниже команду:

sudo systemctl restart postgresql

Теперь просто откройте порт «5432» в брандмауэре, и вы готовы увидеть все базы данных, и вы можете подключиться с любого IP-адреса к серверу PostgreSQL:

sudo ufw allow 5432

Это все. Ваш сервер базы данных PostgreSQL доступен с удаленных хостов.

Вывод

База данных PostgreSQL по умолчанию настроена на привязку к локальному хосту, что ограничивает другой IP-адрес и хост для подключения или доступа к серверу PostgreSQL. В этой статье мы провели вас через настройку PostgreSQL, чтобы разрешить удаленное подключение, чтобы другие IP-адреса могли связываться с сервером. Таким образом, другие хосты могут легко просматривать список баз данных и удаленно подключаться к серверу PostgreSQL.

Support us with a

Successivamente, completa il checkout per l'accesso completo a Noviello.it.
Bentornato! Accesso eseguito correttamente.
Ti sei abbonato con successo a Noviello.it.
Successo! Il tuo account è completamente attivato, ora hai accesso a tutti i contenuti.
Operazione riuscita. Le tue informazioni di fatturazione sono state aggiornate.
La tua fatturazione non è stata aggiornata.