Как узнать версию PostgreSQL в Ubuntu Linux и Windows - Академия Selectel

Как узнать версию PostgreSQL

В этой инструкции учим смотреть версию PostgreSQL в командной строке и с помощью клиентской оболочки PSQL.

Введение

PostgreSQL — объектно-реляционная система управления базами данных с открытым исходным кодом. Есть несколько способов узнать версию PostgreSQL, установленную на сервере. Технические специалисты должны располагать такими сведениями, например, чтобы своевременно производить обновление программного обеспечения, понимать, насколько текущая версия совместима для интеграции с той или иной службой, и для выполнения иных административных задач. Будем считать, что PostgreSQL уже установлена на сервере и работает. Если на этапе установки и настройки возникли какие-либо сложности, у нас в блоге есть статья, в которой рассмотрены базовые функции по работе с СУБД. В нашем случае, в качестве операционной системы выбрана Ubuntu Linux 22.04 и версия PostgreSQL 14.5, установленная из репозитория.

Обозначение версий PostgreSQL

Разработчики придерживаются следующей схемы нумерации версий продукта: MAJOR.MINOR, где major — основная версия, которая снабжается новым функционалом, исправляет ошибки обновляет систему безопасности. Такой релиз выпускается примерно раз в год и поддерживается ближайшие 5 лет. Minor — дополнительная версия, выпускается не реже одного раза в три месяца и содержит в основном обновления системы безопасности.

Проверить версии PostgreSQL из командной строки

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


    pg_config --version

Результат выполнения:


    postgres (PostgreSQL) 14.5 (Ubuntu 14.5-0ubuntu0.22.04.1)

Из вывода команды видно, что используется версия PostgreSQL 14.5.

Есть и другие варианты проверки, но с ними не всегда удается сделать все с ходу:


    postgres --version

Или используя короткую версию параметра -V:


    postgres -V

Обратите внимание, что в первом случае применяется длинная версия параметра —version, а во втором короткая -V, результат выполнения во всех трех случаях абсолютно одинаковый.

На этом этапе некоторые операционные системы могут сообщить об ошибке: Command ‘postgres’ not found, это не проблема, и связано с тем, что разработчики данного программного продукта по каким-либо причинам не размещают двоичный исполняемый файл postgres ни в одну из папок, прописанных в переменной окружения $PATH. В таком случае, найдем его самостоятельно:


    sudo find / -type f -iwholename "*/bin/postgres"

Результат выполнения команды в нашем случае:


    /usr/lib/postgresql/14/bin/postgres

Файл найден. Повторяем вышеописанные действия, используя абсолютный путь:


    /usr/lib/postgresql/14/bin/postgres --version

Или:


    /usr/lib/postgresql/14/bin/postgres -V

Результат выполнения обеих команд будет идентичный, что был описан выше.

Узнать версию сервера PostgreSQL, используя оболочку

Также есть возможность определить версию СУБД непосредственно из оболочки самого сервера. На практике такой подход применим при написании SQL-запросов. Переходим в интерактивный терминал PostgreSQL от имени пользователя postgres:


    sudo -u postgres psql

Система попросит ввести свой пароль для использования функционала sudo. После ввода пароля должно появиться приглашение интерпретатора SQL-запросов в виде:


    postgres=#

Для отображения версии установленного сервера вводим запрос:


    SELECT version();

В ответ получим:


    ---------------------------------------------------------------------------------------------------------------------------------
 PostgreSQL 14.5 (Ubuntu 14.5-0ubuntu0.22.04.1) on x86_64-pc-linux-gnu, compiled by gcc (Ubuntu 11.2.0-19ubuntu1) 11.2.0, 64-bit
(1 row)

Из вывода команды видно, что установлена версия 14.5, а также другие технические данные о сервере.

Если необходимо запросить версию и менее детализированный вывод, используем конструкцию:


    SHOW server_version;

Тогда ответ от сервера будет выглядеть следующим образом:


    server_version
-------------------------------------
 14.5 (Ubuntu 14.5-0ubuntu0.22.04.1)
(1 row)

Запущенный сервер сообщает номер версии — 14.5. Для выхода из SQL shell нужно ввести команду \q и нажать Enter.

Посмотреть версию утилиты PSQL

PSQL — утилита, служащая интерфейсом между пользователем и сервером, она принимает SQL-запросы, затем передает их PostgreSQL серверу и отображает результат выполнения. Данный инструмент предоставляет очень мощный функционал для автоматизации и написания скриптов под широкий спектр задач. Для получения информации о версии установленной утилиты, нужно выполнить команду:


    psql -V

Или используя длинную версию параметра –version:


    psql --version

Вывод в обоих случаях будет одинаковый:


    psql (PostgreSQL) 14.5 (Ubuntu 14.5-0ubuntu0.22.04.1)

Терминальная утилита PSQL имеет версию 14.5.

Заключение

В этой инструкции мы:

  • разобрались в схеме управления версиями разработчиками продукта;
  • научились смотреть версию PostgreSQL в командной строке и с помощью клиентской оболочки PSQL;

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