Установка и запуск PostgreSQL на CentOS или Rocky

Обновлено Обновлено: Опубликовано Опубликовано:

Тематические термины: PostgreSQL, CentOS

Данная инструкция написана на примере систем CentOS 7 и 8 (Rocky), а также PostgreSQL 9/10 (из коробки) или любой другой версии (настройка репозитория).

Установка

Мы можем использовать разные методы установки PostgreSQL, в зависимости от того, какая версия нам нужна. Опишем их.

Нативная версия (встроенный репозиторий)

В зависимости от версии операционной системы, из коробки будет установлена своя нативная версия PostgreSQL, например:

  • CentOS 7 — 9.2.
  • CentOS / Rocky версии 8 — 10.
  • CentOS / Rocky версии 9 — 13.

Чтобы уточнить, какая именно версия будет установлена, вводим команду:

yum list postgresql-server

Для установки просто вводим:

yum install postgresql-server

Разные версии PostgreSQL (репозиторий разработчика)

Для установки более свежей версии PostgreSQL на CentOS необходимо подключить репозиторий:

yum install https://download.postgresql.org/pub/repos/yum/reporpms/EL-`rpm -E %{rhel}`-x86_64/pgdg-redhat-repo-latest.noarch.rpm

Установка PostgreSQL в CentOS 8 осуществлена через модульные репозитории, что помешает нам — отключаем их командой:

dnf module disable postgresql

И чистим кэш:

dnf clean all

После чего обновляем список пакетов:

yum makecache -y 

Список доступных к установке версий можно посмотреть командой:

yum repolist pgdg*

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

yum install postgresql14-server

* в данном примере будет установлен postgresql версии 14.
** система проверит репозиторий на наличие нужного пакета и задаст запрос на подтверждение установки программы — отвечаем Y.

Также стоит установить стандартный набор расширений:

yum install postgresql14-contrib

Использование модулей

Начиная с версии CentOS / Rocky 8, мы можем использовать модули для установки программ. Модули — это ветки репозитория, которые позволят устанавливать определенную версию приложения.

Чтобы увидеть все модули для postgresql, вводим:

dnf module list | grep postgresql

Переключимся на postgresql версии 15:

dnf module enable postgresql:15

Теперь устанавливаем его:

dnf install postgresql-server

Запуск

После установки СУБД необходимо:

  1. Инициализировать базу. Это делается с помощью утилиты postgresql-setup с ключом initdb.
  2. Разрешить автозапуск сервиса.
  3. Стартовать службу.

В зависимости от версии postgresql, эти операции выполняются, немного, по-разному.

PostgreSQL (базовый репозиторий или модули)

Инициализация базы:

postgresql-setup initdb

Запуск сервиса:

systemctl enable postgresql --now

PostgreSQL (другая версия — на примере 14)

Инициализация базы (синтаксис):

/usr/pgsql-<версия>/bin/postgresql-<версия>-setup initdb

Например:

/usr/pgsql-14/bin/postgresql-14-setup initdb

Разрешаем запуск сервиса и стартуем его:

systemctl enable postgresql-14 --now

Тестовое подключение

Заходим в систему под учетной записью postgres:

su - postgres

Подключаемся к базе:

psql

Делаем тестовый запрос на получение списка таблиц:

=# \dt *

Также можно посмотреть список баз и их размеры:

=# \l+

Выходим из оболочки psql:

=# \q

Отключаемся от системы пользователем postgres:

exit

Настройка завершена. Следующим шагом настраиваем подключение к PostgreSQL и создаем пользователя.

Удаление

Для удаления достаточно ввести следующую команду.

PostgreSQL (базовый репозиторий)

yum remove postgresql-server

PostgreSQL (другая версия — на примере 14)

yum remove postgresql14-server

Читайте также

Дополнительная информация по PostgreSQL:

 1. Как работать с пользователями в PostgreSQL.

2. Как настроить удаленное подключение к PostgreSQL.

3. Обновление PostgreSQL на CentOS.

4. Резервное копирование PostgreSQL.

# CentOS # Rocky Linux # Базы данных # Серверы
Дмитрий Моск — частный мастер
Была ли полезна вам эта инструкция?

Да            Нет