В этом разделе описываются параметры конфигурации категории Параметры подключения клиента.
Примечание!
Ручное изменение этих параметров следует выполнять с осторожностью, чтобы обеспечить стабильность и безопасность системы.
Задает формат вывода значений типа bytea.
hex (по умолчанию) и escape (традиционный формат PostgreSQL).| Тип данных | Значение по умолчанию | Возможные значения | Категория |
|---|---|---|---|
| enum | hex | hex / escape | segments; session; reload |
Управляет проверкой тела функции на синтаксис и ссылки на объекты при создании с помощью оператора CREATE FUNCTION.
| Тип данных | Значение по умолчанию | Категория |
|---|---|---|
| boolean | on | master; session; reload |
Задает уровень сообщений, отправляемых клиенту.
log здесь отличается от его значения в параметре log_min_messages.| Тип данных | Значение по умолчанию | Возможные значения | Категория |
|---|---|---|---|
| enum | notice | debug5 / debug4 / debug3 / debug2 / debug1 / log / notice / warning / error Каждый уровень включает все последующие уровни. Более высокие уровни приводят к отправке меньшего количества сообщений. |
master; session; reload |
Задает таблицу по умолчанию для создания таблиц и индексов, если в команде CREATE явно не указано иное.
CREATE, настройка применяется; иначе используется текущая база данных.temp_tablespaces.| Тип данных | Значение по умолчанию | Категория |
|---|---|---|
| string | master; session; reload |
Определяет, является ли каждая новая транзакция только для чтения.
off, разрешающая как чтение, так и запись.| Тип данных | Значение по умолчанию | Категория |
|---|---|---|
| boolean | off | master; session; reload |
Мягкий верхний предел размера наборов результатов, возвращаемых сканированием индекса GIN.
| Тип данных | Значение по умолчанию | Возможные значения | Категория |
|---|---|---|---|
| int | 0 | 0 ~ INT_MAX | master; session; reload |
Задает максимальный размер списка ожидания для индексов GIN при включении fastupdate.
| Тип данных | Значение по умолчанию | Возможные значения | Категория |
|---|---|---|---|
| int | 4096 | 64 ~ (INT_MAX/1024) | master; session; reload |
Освобождает системные ресурсы (например, разделяемую память) для сессии базы данных, если она остается бездействующей дольше указанного времени (в миллисекундах), сохраняя при этом соединение открытым.
0 отключает эту функцию.| Тип данных | Значение по умолчанию | Возможные значения | Категория |
|---|---|---|---|
| int | 18000 | 0 ~ INT_MAX | master; system; reload |
Завершает любую сессию с открытой транзакцией, которая была бездействующей дольше указанного времени.
0, отключающее таймаут.| Тип данных | Значение по умолчанию | Возможные значения | Категория |
|---|---|---|---|
| int | 0 | 0 ~ INT_MAX | master; session; reload |
Возвращает настройку локали, используемую для сортировки текстовых данных.
| Значение по умолчанию | Возможные значения | Категория |
|---|---|---|
| system-dependent | read only |
Возвращает настройку локали, используемую для классификации символов.
| Значение по умолчанию | Возможные значения | Категория |
|---|---|---|
| system-dependent | read only |
Прерывает любой оператор, ожидающий более указанного времени (в миллисекундах) получения блокировки на таблице, индексе, строке или другом объекте базы данных.
LOCK TABLE, SELECT FOR UPDATE без NOWAIT), так и к неявным блокировкам.statement_timeout, этот таймаут применяется только во время ожидания блокировки.statement_timeout не равен нулю, установка lock_timeout в то же или большее значение неэффективна, так как таймаут транзакции сработает раньше.log_min_error_statement установлен в error или ниже.lock_timeout в postgresql.conf не рекомендуется, так как она влияет на все сессии.0, отключающее таймаут.| Тип данных | Значение по умолчанию | Возможные значения | Категория |
|---|---|---|---|
| int | 0 | 0 ~ INT_MAX | master; session; reload |
Управляет применением политик безопасности на уровне строк или вызовом ошибки.
on политики применяются нормально.off любой запрос, затронутый политикой, завершается ошибкой.off, если ограниченная видимость строк может привести к некорректным результатам. pg_dump по умолчанию делает это изменение.BYPASSRLS).| Тип данных | Значение по умолчанию | Категория |
|---|---|---|
| boolean | on | master; system; restart |
Задает порядок поиска схем при ссылке на объект (таблицу, тип, функцию и т.д.) по неполному имени.
search_path должен быть списком имен схем, разделенных запятыми. Любая несуществующая схема или схема без привилегии USAGE игнорируется без сообщения об ошибке.$user заменяется именем схемы, заданным в CURRENT_USER. Эта схема включается только если у пользователя есть привилегия USAGE на неё; иначе $user игнорируется.pg_catalog всегда ищется. Если она указана в пути, она ищется в порядке; иначе она ищется перед любыми другими схемами.pg_temp_nnn также всегда ищется (если существует). Её можно явно указать с помощью псевдонима pg_temp. Если она не указана, она ищется первой (даже до pg_catalog). Однако временная схема используется только для отношений (таблиц, представлений, последовательностей) и типов данных, никогда для функций или операторов.search_path."$user", public. Это поддерживает базы данных, где пользователи либо разделяют схему public, либо имеют частные схемы, либо сочетание обоих.current_schemas. Это отличается от проверки search_path, так как current_schemas показывает, как разрешаются элементы в search_path.| Тип данных | Значение по умолчанию | Возможные значения | Категория |
|---|---|---|---|
| string | "$user", public | список имен схем, разделенных запятыми | master; session; reload |
Управляет срабатыванием триггеров и правил, связанных с репликацией, для текущей сессии.
ENABLE TRIGGER при применении реплицированных изменений, чтобы триггеры и правила (если не изменены) не срабатывали на репликах. См. пункты ENABLE RULE и origin в ALTER TABLE.local и local одинаково. Сторонние системы репликации могут использовать эти значения внутренне, например, replica для маркировки сессий, изменения которых не должны реплицироваться.log_min_error_statement отключает проверку внешних ключей. Неправильное использование может привести к несогласованности данных.| Тип данных | Значение по умолчанию | Возможные значения | Категория |
|---|---|---|---|
| enum | origin | origin / replica / local | segments; session; reload; superuser |
Прерывает любой оператор, выполняющийся дольше указанного времени (в миллисекундах).
error установлен в postgresql.conf или ниже.0, так как это влияет на все сессии.CREATE, отключающее таймаут.| Тип данных | Значение по умолчанию | Возможные значения | Категория |
|---|---|---|---|
| int | 0 | 0 ~ INT_MAX | master; session; reload |
Задает таблицу(ы) пространства хранения для временных объектов (временных таблиц и их индексов), если temp_tablespaces не указан явно.
CREATE. Пользователи, не являющиеся суперпользователями, должны иметь привилегию CREATE на временную таблицу, которую предоставляет суперпользователь.postgresql.conf).| Тип данных | Значение по умолчанию | Возможные значения | Категория |
|---|---|---|---|
| string | одно или несколько имен таблиц пространства хранения | master; session; reload |
Задает долю общего количества кортежей кучи, подсчитанных при предыдущем сборе статистики. Вставки ниже этого порога не будут запускать сканирование индекса во время фазы очистки VACUUM.
vacuum_cleanup_index_scale_factor от общего числа кортежей кучи на момент последнего сбора статистики.VACUUM не обнаружит отсутствие мертвых кортежей. Таким образом, пропуск сканирования индекса во время очистки возможен только со второго цикла VACUUM и далее, если мертвых кортежей не обнаружено.vacuum_cleanup_index_scale_factor в 0 сканирование индекса никогда не пропускается во время очистки VACUUM.| Тип данных | Значение по умолчанию | Возможные значения | Категория |
|---|---|---|---|
| floating point | 0.1 | 0 ~ 10000000000 | segments; session; reload |
Задает минимальный возраст (в транзакциях), которого должен достичь идентификатор транзакции, прежде чем VACUUM заменит его на FrozenXID во время сканирования таблицы.
| Тип данных | Значение по умолчанию | Возможные значения | Категория |
|---|---|---|---|
| int | 50000000 | 0 ~ 100000000000 | segments; system; restart |
Когда поле pg_class.relfrozenxid таблицы достигает этого возраста, VACUUM выполняет агрессивное сканирование.
VACUUM тем, что посещает каждую страницу, которая может содержать незамороженные XID или MXID, а не только страницы с мертвыми кортежами.VACUUM можно запускать периодически до срабатывания автоматического автовакуума против переполнения.| Тип данных | Значение по умолчанию | Возможные значения | Категория |
|---|---|---|---|
| int | 150000000 | 0 ~ 200000000 | segments; session; reload |
Задает пороговый возраст (в мультитранзакциях), используемый VACUUM для решения, заменять ли идентификатор мультитранзакции новым идентификатором транзакции или мультитранзакции.
| Тип данных | Значение по умолчанию | Возможные значения | Категория |
|---|---|---|---|
| int | 5000000 | 0 ~ 100000000 | segments; session; reload |
Если поле pg_class.relminmxid таблицы превышает этот возраст, VACUUM выполняет агрессивное сканирование.
VACUUM, который сканирует только страницы с мертвыми кортежами.VACUUM можно запускать периодически до срабатывания автоматического автовакуума против переполнения.| Тип данных | Значение по умолчанию | Возможные значения | Категория |
|---|---|---|---|
| int | 150000000 | 0 ~ 200000000 | segments; session; reload |
Устанавливает кодировку клиента (набор символов).
| Тип данных | Значение по умолчанию | Возможные значения | Категория |
|---|---|---|---|
| string | SQL_ASCII | Поддерживаемые наборы символов | master; session; reload |
Устанавливает формат отображения значений даты и времени, а также правила интерпретации неоднозначных входных данных даты.
ISO, Postgres, SQL или German) и порядок следования года/месяца/дня при вводе/выводе (DMY, MDY или YMD). Эти части могут задаваться независимо или вместе. Ключевые слова Euro и European являются синонимами для DMY; US, NonEuro и NonEuropean — синонимы для MDY.ISO, MDY, но initdb инициализирует настройку на основе выбранного поведения локали lc_time.| Тип данных | Значение по умолчанию | Возможные значения | Категория |
|---|---|---|---|
| string | iso, mdy | <формат вывода>,<порядок года/месяца/дня> | master; system; restart |
Выбирает конфигурацию текстового поиска, используемую функциями текстового поиска, если она явно не указана.
pg_catalog.simple, но initdb инициализирует её на основе выбранной локали lc_ctype, если существует соответствующая конфигурация.| Тип данных | Значение по умолчанию | Возможные значения | Категория |
|---|---|---|---|
| string | pg_catalog.english | имя конфигурации текстового поиска | master; session; reload |
Настраивает количество отображаемых цифр для значений с плавающей запятой, включая float4, float8 и геометрические типы.
float8 требуют до 17 цифр; float4 — до 9.3.0 или отрицательном значении вывод округляется до заданной десятичной точности.| Тип данных | Значение по умолчанию | Возможные значения | Категория |
|---|---|---|---|
| int | 1 | -15 ~ 3 | master; session; reload |
Устанавливает формат отображения значений интервала.
sql_standard создаёт вывод, совместимый с литералами интервалов стандарта SQL.iso_8601 создаёт вывод, соответствующий формату продолжительности ISO 8601 duration format.intervalstyle может также влиять на интерпретацию неоднозначных входных данных интервала.| Тип данных | Значение по умолчанию | Возможные значения | Категория |
|---|---|---|---|
| enum | postgres | sql_standard / postgres / iso_8601 / postgres_verbose | master; session; reload |
Устанавливает язык отображения сообщений.
locale -a.| Тип данных | Значение по умолчанию | Возможные значения | Категория |
|---|---|---|---|
| string | локали, перечисленные в locale -a |
segments; system; restart; superuser |
Устанавливает локаль для форматирования денежных сумм, например, с помощью функций to_char.
locale -a.| Тип данных | Значение по умолчанию | Возможные значения | Категория |
|---|---|---|---|
| string | локали, перечисленные в locale -a |
segments; system; restart |
Устанавливает локаль для форматирования чисел, например, с помощью функций to_char.
locale -a.| Тип данных | Значение по умолчанию | Возможные значения | Категория |
|---|---|---|---|
| string | локали, перечисленные в locale -a |
segments; system; restart |
Устанавливает локаль для форматирования дат и времени, например, с помощью функций to_char.
locale -a.| Тип данных | Значение по умолчанию | Возможные значения | Категория |
|---|---|---|---|
| string | локали, перечисленные в locale -a |
segments; system; restart |
Устанавливает часовой пояс для отображения и интерпретации временных меток.
| Тип данных | Значение по умолчанию | Возможные значения | Категория |
|---|---|---|---|
| string | GMT | аббревиатуры часовых поясов | segments; restart |
Устанавливает набор аббревиатур часовых поясов, принимаемых при вводе даты и времени.
$GPHOME/share/postgresql/timezonesets/. Вы можете создавать пользовательские файлы в этой директории. Пример: чтобы использовать файл custom, содержащий стандартные зоны плюс WIB (Waktu Indonesia Barat):Default из $GPHOME/share/postgresql/timezonesets/ в custom. Добавьте информацию о часовом поясе WIB в custom.custom в директорию $GPHOME/share/postgresql/timezonesets/ на хостах MXMaster и MXSegment.timezone_abbreviations в значение custom.mxstop -u).| Тип данных | Значение по умолчанию | Возможные значения | Категория |
|---|---|---|---|
| enum | Default | Default / Australia / India / | master; session; reload |
Несколько параметров позволяют предварительно загружать общие библиотеки в сервер для добавления функциональности или повышения производительности. Например, параметр $libdir/mylib может вызвать предварительную загрузку mylib.so (или mylib.sl на некоторых платформах) из стандартной директории библиотек. Эти параметры различаются по моменту применения и требуемым привилегиям.
Библиотеки процедурных языков YMatrix могут быть предварительно загружены с использованием синтаксиса $libdir/plXXX, где XXX — это pgsql, perl, tcl или python.
Таким способом можно загружать только библиотеки, специально разработанные для YMatrix. Каждая поддерживаемая библиотека содержит «магический блок» для проверки совместимости. Поэтому библиотеки, не предназначенные для YMatrix, не могут быть загружены этим способом. Их можно загружать с помощью инструментов ОС, таких как LD_PRELOAD.
См. документацию конкретного модуля для рекомендуемых методов загрузки.
Задаёт имя библиотеки поставщика JIT для использования.
| Тип данных | Значение по умолчанию | Категория |
|---|---|---|
| string | llvmjit | segments; session; restart; superuser |
Любой пользователь может использовать эту переменную для указания одной или нескольких общих библиотек, которые будут предварительно загружены в начале соединения.
LOAD. Пробелы между элементами игнорируются. Чтобы включить пробелы или запятые в имя библиотеки, заключите имя в двойные кавычки.plugins стандартной директории библиотек (ответственность за установку только «безопасных» библиотек здесь лежит на администраторе базы данных).local_preload_libraries могут явно указывать полный путь к директории, например $libdir/plugins/mylib, или только имя библиотеки — mylib и $libdir/plugins/mylib имеют одинаковый эффект.LOAD. Обычно этот параметр задаётся через переменную окружения PGOPTIONS клиента или ALTER ROLE SET.session_preload_libraries.| Тип данных | Значение по умолчанию | Категория настройки |
|---|---|---|
| string | segments; system; restart |
Только суперпользователи могут использовать эту переменную для указания одной или нескольких общих библиотек, которые будут предварительно загружены в начале соединения.
LOAD. Пробелы между элементами игнорируются. Чтобы включить пробелы или запятые в имя библиотеки, заключите имя в двойные кавычки.LOAD. Например, установка этого параметра через ALTER ROLE SET включает auto_explain для всех сессий под заданным именем пользователя.shared_preload_libraries, предварительная загрузка библиотеки при запуске сессии не даёт преимущества по производительности по сравнению с загрузкой при первом использовании. Однако этот параметр полезен при использовании пула соединений.| Тип данных | Значение по умолчанию | Категория настройки |
|---|---|---|
| string | segments; session; reload; superuser |
LOAD. Пробелы между элементами игнорируются. Чтобы включить пробелы или запятые в имя библиотеки, заключите имя в двойные кавычки.postmaster запуска, например выделение общей памяти, резервирование лёгких блокировок или запуск фоновых процессов. Такие библиотеки должны загружаться при запуске сервера через этот параметр.session_preload_libraries.shared_preload_libraries остаётся полезным на Windows для библиотек, которые должны выполнять действия при запуске postmaster.| Тип данных | Значение по умолчанию | Категория настройки |
|---|---|---|
| string | segments; system; restart |
При загрузке динамически загружаемых модулей, если имя файла, указанное в команде CREATE FUNCTION или LOAD, не содержит компонента директории (то есть имя не содержит "/"), система ищет требуемый файл в этом пути.
dynamic_library_path должно быть списком абсолютных путей к директориям, разделённых двоеточиями (или точкой с запятой на Windows). Если элемент списка начинается со специальной строки $libdir, она заменяется на встроенную директорию библиотек установки PostgreSQL. Именно туда устанавливаются модули, предоставляемые дистрибутивом PostgreSQL (название этой директории можно найти с помощью pg_config --pkglibdir).dynamic_library_path = '/usr/local/lib/postgresql:/home/my_project/lib:$libdir'
Или на Windows:
dynamic_library_path = 'C:\tools\postgresql;H:\my_project\lib;$libdir'
$libdir. Если установлено в пустую строку, автоматический поиск пути отключается.postgresql.conf.| Тип данных | Значение по умолчанию | Допустимые значения | Категория настройки |
|---|---|---|---|
| string | $libdir | Список абсолютных путей к директориям, разделённых двоеточиями | segments; system; restart |