19.15. Предопределённые параметры #
Следующие «параметры» доступны только для чтения. По этой причине они отсутствуют в примере файла postgresql.conf. Эти параметры отражают различные аспекты поведения PostgreSQL, которые могут быть полезны в определённых приложениях, например, клиентских средствах администрирования. Большинство из них задаётся при компиляции или при установке PostgreSQL.
block_size(integer) #Сообщает размер блока на диске. Он определяется значением
BLCKSZпри сборке сервера. Значение по умолчанию — 8192 байта. Значениеblock_sizeвлияет на некоторые другие переменные конфигурации (например, shared_buffers). Об этом говорится в Разделе 19.4.data_checksums(boolean) #Сообщает, включён ли в этом кластере контроль целостности данных. За дополнительными сведениями обратитесь к Контрольные суммы данных.
data_directory_mode(integer) #В Unix-системах этот параметр показывает разрешения (определённые data_directory), которые были установлены для каталога данных на момент запуска сервера. (В Microsoft Windows этот параметр всегда показывает
0700). За дополнительными сведениями обратитесь к Доступ группы.debug_assertions(boolean) #Сообщает, был ли PostgreSQL собран с проверочными утверждениями. Это имеет место, когда при сборке PostgreSQL определяется макрос
USE_ASSERT_CHECKING(например, при выполненииconfigureс флагом--enable-cassert). По умолчанию PostgreSQL собирается без проверочных утверждений.huge_pages_status(enum) #Сообщает текущее состояние использования огромных страниц в экземпляре:
on,offилиunknown(если выводится с помощьюpostgres -C). Этот параметр позволяет определить, получилось ли использовать огромные страницы после указанияhuge_pages=try. За дополнительной информацией обратитесь к в huge_pages.integer_datetimes(boolean) #Сообщает, был ли PostgreSQL собран с поддержкой даты и времени в 64-битных целых. Начиная с PostgreSQL версии 10, он всегда равен
on.in_hot_standby(boolean) #Сообщает, находится ли сервер в настоящий момент в режиме горячего резерва. Когда этот параметр имеет значение
on(вкл.), все транзакции ограничивается режимом «только чтение». В рамках сеанса это может измениться только в том случае, если сервер повышается до ведущего. За подробностями обратитесь к Разделу 26.4.max_function_args(integer) #Сообщает верхний предел для числа аргументов функции. Он определяется константой
FUNC_MAX_ARGSпри сборке сервера. По умолчанию установлен предел в 100 аргументов.max_identifier_length(integer) #Сообщает максимальную длину идентификатора. Она определяется числом на 1 меньше, чем
NAMEDATALEN, при сборке сервера. По умолчанию константаNAMEDATALENравна 64; следовательноmax_identifier_lengthпо умолчанию равна 63 байтам, но число символов в многобайтной кодировке будет меньше.max_index_keys(integer) #Сообщает верхний предел для числа ключей индекса. Он определяется константой
INDEX_MAX_KEYSпри сборке сервера. По умолчанию установлен предел в 32 ключа.segment_size(integer) #Сообщает, сколько блоков (страниц) можно сохранить в одном файловом сегменте. Это число определяется константой
RELSEG_SIZEпри сборке сервера. Максимальный размер сегмента в файлах равен произведениюsegment_sizeиblock_size; по умолчанию это 1 гигабайт.server_encoding(string) #Сообщает кодировку базы данных (набор символов). Она определяется при создании базы данных. Обычно клиентов должно интересовать только значение client_encoding.
server_version(string) #Сообщает номер версии сервера. Она определяется константой
PG_VERSIONпри сборке сервера.server_version_num(integer) #Сообщает номер версии сервера в виде целого числа. Она определяется константой
PG_VERSION_NUMпри сборке сервера.shared_memory_size(integer) #Сообщает размер основной области разделяемой памяти, округлённый до ближайшего мегабайта.
shared_memory_size_in_huge_pages(integer) #Сообщает количество огромных страниц, необходимых для основной области разделяемой памяти при заданном значении huge_page_size. Если огромные страницы не поддерживаются, выдаётся значение
-1.Этот параметр поддерживается только в Linux, а на других платформах всегда имеет значение
-1. За более подробной информацией об использовании огромных страниц в Linux обратитесь к Подразделу 18.4.5.ssl_library(string) #Сообщает имя библиотеки SSL, с которой был собран данный сервер PostgreSQL (даже если SSL для данного экземпляра не настроен или не используется), например,
OpenSSL, либо пустую строку, если сборка производилась без такой библиотеки.wal_block_size(integer) #Сообщает размер блока WAL на диске. Он определяется константой
XLOG_BLCKSZпри сборке сервера. Значение по умолчанию — 8192 байта.wal_segment_size(integer) #Сообщает размер сегментов журнала предзаписи. Значение по умолчанию — 16 МБ. За дополнительными сведениями обратитесь к Разделу 28.5.