Работа с конфигурацией в PostgreSQL
При работе с конфигурацией в PostgreSQL вам может потребоваться найти и изменить расположение экземпляра кластера, получить перечень доступных типов данных, изменить настройки СУБД без перезагрузки. Давайте посмотрим, как это лучше сделать.
Находим и меняем расположение экземпляра кластера
В некоторых случаях на одной ОС настроено сразу несколько экземпляров PostgreSQL, и «сидят» они на разных портах. В такой ситуации найти путь к физическому размещению каждого экземпляра — та ещё задачка. Чтобы её упростить, давайте для получения нужной информации, выполним следующий запрос:
SHOW data_directory;
А теперь изменим расположение на другое, используя следующую команду:
SET data_directory to new_directory_path;
И не забудем выполнить перезагрузку, чтобы изменения вступили в силу.
Получаем перечень доступных типов данных
Здесь всё просто, вот наша команда:
SELECT typname, typlen from pg_type where typtype='b';
Обратите внимание, что typname — это имя типа данных, а typlen — размер типа данных.
Меняем настройки СУБД без перезагрузки
Как известно, настройки PostgreSQL располагаются в специальных файлах типа pg_hba.conf и postgresql.conf. Если вы эти файлы измените, потребуется, чтобы система управления БД вновь получила настройки. Естественно, если выполнить перезагрузку, всё буде ок. Но иногда перезагрузка нежелательна. Как раз для таких случаев в PostgreSQL предусмотрена функция, позволяющая применять изменения без перезагрузки:
SELECT pg_reload_conf();
Правда, она применима, увы, не ко всем параметрам, поэтому иногда без перезагрузки всё же не обойтись...
По материалам «15 Advanced PostgreSQL Commands with Examples» и «10 Most Useful PostgreSQL Commands with Examples».