Как узнать версию PostgreSQL используя SQL?

Если есть доступ к базе данных через pgAdmin (phpPgAdmin, Navicat и т.п.), но нет доступа к серверу, на котором запущена база данных, то, чтобы узнать версию PosttgreSQL можно выполнить SQL запрос:
SELECT version();
Можно также запустить из командной строки следующим образом:
psql -c 'SELECT version();'
Если есть доступ к оболочке, то можно попробовать выполнить следующие команды pg_config и/или psql :
pg_config --version
psql --version
Как узнать версию postgresql
pg_config — вывести информацию об установленной версии Postgres Pro
Синтаксис
Описание
Утилита pg_config выводит параметры конфигурации текущей установленной версии Postgres Pro . Это помогает, например, найти заголовочные файлы и библиотеки, требующиеся программным средствам, которые хотят взаимодействовать с Postgres Pro .
Параметры
При использовании pg_config можно передать следующие параметры:
Вывести расположение исполняемых файлов. Можно использовать, например, для поиска утилиты psql . Обычно там же находится и сама утилита pg_config . —docdir
Вывести расположение файлов документации. —htmldir
Вывести расположение файлов документации в формате HTML. —includedir
Вывести расположение заголовочных C-файлов клиентских интерфейсов. —pkgincludedir
Вывести расположение других заголовочных C-файлов. —includedir-server
Вывести расположение заголовочных C-файлов для программирования серверной части. —libdir
Вывести расположение библиотек объектного кода. —pkglibdir
Вывести расположение динамически подгружаемых модулей, либо путь, где сервер должен их искать. По этому пути также могут размещаться и другие архитектурно-зависимые файлы. —localedir
Вывести расположение файлов поддержки локалей. Если поддержка локалей не была сконфигурирована на этапе сборки Postgres Pro , будет выведена пустая строка. —mandir
Вывести расположение страниц руководства man. —sharedir
Вывести расположение архитектурно-независимых вспомогательных файлов. —sysconfdir
Вывести расположение системных конфигурационных файлов. —pgxs
Вывести расположение файлов сборки расширений. —configure
Вывести список параметров configure , использованных при сборке Postgres Pro . Это может пригодиться, чтобы при последующей сборке сделать идентичную конфигурацию. Или для того, чтобы найти с какими параметрами был собран используемый бинарный пакет. (Стоит отметить, что бинарные пакеты нередко содержат патчи, специфичные для дистрибутивов.) См. примеры ниже. —cc
Вывести использованное при сборке Postgres Pro значение переменной CC . Оно отражает, какой C-компилятор применялся. —cppflags
Вывести использованное при сборке Postgres Pro значение переменной CPPFLAGS . Оно отражает флаги C-компилятора, применённые для препроцессора. Обычно это флаги -I . —cflags
Вывести использованное при сборке Postgres Pro значение переменной CFLAGS . Оно отражает флаги C-компилятора, применённые при сборке. —cflags_sl
Вывести использованное при сборке Postgres Pro значение переменной CFLAGS_SL . Оно отражает дополнительные флаги C-компилятора для сборки разделяемых библиотек. —ldflags
Вывести использованное при сборке Postgres Pro значение переменной LDFLAGS . Оно отражает флаги компоновщика. —ldflags_ex
Вывести использованное при сборке Postgres Pro значение переменной LDFLAGS_EX . Оно отражает флаги компоновщика, использованные при сборке лишь исполняемых файлов. —ldflags_sl
Вывести использованное при сборке Postgres Pro значение переменной LDFLAGS_SL . Оно отражает флаги компоновщика, использованные при сборке лишь разделяемых библиотек. —libs
Вывести использованное при сборке Postgres Pro значение переменной LIBS . Обычно оно отражает флаги подключения внешних библиотек к Postgres Pro , переданные с ключом -l . —version
Вывести версию PostgreSQL , на которой основан Postgres Pro . —pgpro-version
Вывести версию Postgres Pro . —pgpro-edition
Вывести редакцию Postgres Pro . -?
—help
Вывести справку по команде pg_config .
Если одновременно передано несколько параметров, то выводимая информация будет следовать согласно их порядку. Если параметры не переданы, то будет выведена вся информация с подписями, к чему она относится.
Замечания
Параметры —docdir , —pkgincludedir , —localedir , —mandir , —sharedir , —sysconfdir , —cc , —cppflags , —cflags , —cflags_sl , —ldflags , —ldflags_sl и —libs доступны, начиная с версии PostgreSQL 8.1. Параметр —htmldir добавлен в PostgreSQL 8.4. Параметр —ldflags_ex добавлен в PostgreSQL 9.0.
Пример
Чтобы воспроизвести конфигурацию сборки текущей инсталляции Postgres Pro, можно выполнить команду:
eval ./configure `pg_config --configure`
Вывод pg_config —configure содержит символы экранирования, поэтому значения аргументов, содержащие пробелы, представлены корректно. Таким образом, для получения корректного результата необходимо применить eval .
| Пред. | Наверх | След. |
| pgbench | Начало | pg_dump |
Как узнать версию PostgreSQL
В этой инструкции учим смотреть версию PostgreSQL в командной строке и с помощью клиентской оболочки PSQL.
Эта инструкция — часть курса «PostgreSQL для новичков».
Смотреть весь курс
Введение
PostgreSQL — объектно-реляционная система управления базами данных с открытым исходным кодом. Есть несколько способов узнать версию PostgreSQL, установленную на сервере. Технические специалисты должны располагать такими сведениями, например, чтобы своевременно производить обновление программного обеспечения, понимать, насколько текущая версия совместима для интеграции с той или иной службой, и для выполнения иных административных задач. Будем считать, что PostgreSQL уже установлена на сервере и работает. Если на этапе установки и настройки возникли какие-либо сложности, у нас в блоге есть статья, в которой рассмотрены базовые функции по работе с СУБД. В нашем случае, в качестве операционной системы выбрана Ubuntu Linux 22.04 и версия PostgreSQL 14.5, установленная из репозитория.
PostgreSQL как сервис
Обозначение версий 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, за дополнительной информацией всегда можно обратиться к документации на официальном сайте.
Как создать пользователя в PostgreSQL
DBaaS: что такое облачные базы данных
Зарегистрируйтесь в панели управления
И уже через пару минут сможете арендовать сервер, развернуть базы данных или обеспечить быструю доставку контента.
Читайте также:
Инструкция
Как создать 100 серверов в облаке за минуту? Работа с OpenStack клиентом
Инструкция
Как создать веб-приложение на базе Telegram Mini Apps
Инструкция
Что делает команда chmod и как ее использовать в Linux
Артём Санников
Данная книга является руководством для начинающих специалистов в области анализа и обработки данных. В книге рассматривается язык SQL и его процедурное расширение PL/SQL от компании Oracle.

Как узнать версию PostgreSQL в Windows
Существует несколько способов узнать версию системы управления базами данных PostgreSQL в операционной системе Windows.
Узнать версию PostgreSQL при помощи графической оболочки
Чтобы узнать версию PostgreSQL при помощи графической оболочки, необходимо подключиться к нужной базе данных и ввести следующий запрос:
select version();
Результатом выполнения будет одна строка, в которой будет указана версия.
Узнать версию PostgreSQL при помощи SQL Shell (psql)
Находим утилиту SQL Shell (psql) и запускаем её.

Теперь необходимо подключиться к серверу PostgreSQL:
- Server [localhost] — оставляем пустым, нажимаем Enter;
- Database [postgres] — указываем имя базы данных my_db, нажимаем Enter;
- Port [5432] — оставляем пустым, нажимаем Enter;
- Username [postgres] — оставляем пустым, нажимаем Enter;
- Пароль пользователя postgres — вводим пароль, который был указан при установке.
После подключения к серверу, выполняем следующий запрос:
select version();
Результатом выполнения будет одна строка, в которой будет указана версия.
