Предварительная настройка PostgreSQL в Centos 7

| PostgreSQL

В данной краткой статье приводится базовый алгоритм по установке и настройке postgres в Centos 7.

На момент публиукации этой статьи PostgreSQL устанавливается из официальных дистрибутивов без необходимости компиляции.

Устанавливаем

sudo yum -y install https://download.postgresql.org/pub/repos/yum/reporpms/EL-7-x86_64/pgdg-redhat-repo-latest.noarch.rpm


rpm -qi pgdg-redhat-repo


sudo yum -y install epel-release yum-utils

sudo yum-config-manager --enable pgdg12

sudo yum install postgresql12-server postgresql12

Инициализация и запуск службы базы данных.

После установки перед запуском службы потребуется инициализация базы данных.

sudo /usr/pgsql-12/bin/postgresql-12-setup initdb

Запуск и активация службы сервера базы данных.

sudo systemctl enable --now postgresql-12

Убедитесь, что служба запущена без ошибок.

sudo systemctl status postgresql-12

Меняем пароль пользователя postgres

sudo su - postgres
psql -c "alter user postgres with password 'p@sswo0rd'"

Создаем БД и назначаем владельца

psql

postgres# create database test_db;

postgres# create user test_u with encrypted password 'p@sswo0rd';

postgres# grant all privileges on database test_db to test_u;

postgres# \q

exit

Подключаемся к БД

psql -h localhost -U test_u test_db

Настраимваем подключение к БД с другого IP адреса

sudo vim /etc/postgresql/12/main/postgresql.conf
listen_addresses = '192.168.0.4'

Разрешаем подключаться с подсети 192.168.0.0/24

sudo vim /etc/postgresql/12/main/pg_hba.conf
host all all 192.168.0.0/24 md5

Чтобы настройки вступили в силу перезагружаем PostgreSQL

sudo service postgresql restart

psql -h 192.168.0.4 -U test_u test_db