Запросить параметр (параметр postgresql.conf), например "max_connections"

Кто-нибудь знает, возможно ли вообще (и как, если да) запросить настройки сервера базы данных в PostgreSQL (9.1)?

Мне нужно посмотреть max_connections (максимальное количество открытых соединений БД).

1 ответ

Решение

Может быть так просто, как:

SHOW max_connections;

Это возвращает действующую настройку. Имейте в виду, что он может отличаться от postgresql.conf так как есть несколько способов установить параметры времени выполнения в PostgreSQL. Чтобы сбросить "оригинальную" настройку с postgresql.conf в вашей текущей сессии:

RESET max_connections;

Тем не менее, не применимо к этому конкретному параметру. По документации:

Этот параметр может быть установлен только при запуске сервера.

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

SHOW ALL;

Подробнее о SHOW Команда в руководстве.
Если вам нужно больше деталей или вы хотите интегрировать поиск в стандарт SELECT запрос, есть также:

SELECT * FROM pg_settings;

Возвращает тот же результат, что и SHOW ALL, но с дополнительной информацией за настройку. Для вашего первоначального запроса:

SELECT *
FROM   pg_settings
WHERE  name = 'max_connections';

Существует также функциональный эквивалент current_setting (), который может быть вложен в операторы DML.

SELECT current_setting('max_connections');

Связанные с:

Другие вопросы по тегам