Вариантов установки PostgreSQL существует несколько. Самые простые используя графическую оболочку ОС (MacOS, Linux, Windows, BSD, Solaris) – скачиваем дистрибутив с официального сайта и следуя подсказкам устанавливаем СУБД.
Все было бы хорошо, но такой вариант подходит для тестов, так как никто в промышленных масштабах так устанавливать конечно не будет.
Для установки PostgreSQL на Linux, а именно эта ОС и рекомендована для продакшн, используются или командная строка (наш простой вариант), или уже системы автоматизации типа ansible.
В данном блоге в основном мы будем использовать Ubuntu 22.04 LTS в качестве дистрибутива Linux. Простой и довольно защищенный дистрибутив с постоянными обновлениями безопасности.
Простая установка – на версиях Ubuntu 2022.04 и ниже. Установится
дефолтная версия для конкретной ОС. Например, в Ubuntu 2020.04 при выполнении команды:
sudo apt install postgresql
это будет PostgreSQL 12.
Что означают команды этой строки – sudo (повышаем уровень доступа нашего простого пользователя до суперпользователя), apt (утилита управления приложениями), install (установить), postgresql (непосредственно пакет с СУБД).
Как видите, все довольно просто, но обычно нам нужна конкретная версия СУБД, мы не хотим доверять это дефолтному поведению дистрибутивов ОС.
Поэтому мы будем использовать рекомендованный мной вариант – расширенную установку, где можно выбрать версию дистрибутива, что конкретно устанавливать (сервер, клиент или всё вместе, а также другие расширения).
Обновим список пакетов и сами пакеты:sudo apt update && sudo apt upgrade -y
При обновлении пакетов можем получить предупреждающее окно о
необходимости перезагрузки сервиса – тогда необходимо добавить переменную окружения в команду DEBIAN_FRONTEND=noninteractive, чтобы интерактивно не отвечать на эти вопросы (все нижеперечисленные команды выполняются в одну строку, к сожалению из блога они копируются в 2 строки):sudo apt update && sudo DEBIAN_FRONTEND=noninteractive apt upgrade -y
Добавим репозиторий с последней версией PostgreSQL:sudo sh -c 'echo "deb http://apt.postgresql.org/pub/repos/apt $(lsb_release -cs)-pgdg main" > /etc/apt/sources.list.d/pgdg.list'
Добавим ключ репозитория:wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add -
Обновим список пакетов и установим PostgreSQL. Здесь важный момент
какую версию мы хотим, если версию 13, то просто указываем имя пакета
postgresql, если конкретную, то еще и имя через дефис:sudo apt-get update && sudo DEBIAN_FRONTEND=noninteractive apt-get -y install postgresql-15
После установки мы увидим следующую ситуацию используя утилиту вывода списка кластеров на экран pg_lsclusters:
Кластер PostgreSQL по имени main на 15 версии запущен и доступен по порту 5432.
На самом деле не доступен извне, и как это исправить мы рассмотрим в следующей статье.
Как собрать все эти команды в одну, а также расширенные варианты установки, например сборку из исходников можно посмотреть в моей книге.
Добавить комментарий