Настройки PostgreSQL
Для кластера Managed Service for PostgreSQL можно задать настройки, которые относятся к PostgreSQL. Часть настроек задается на уровне кластера, часть — на уровне пользователя.
Метки рядом с названием настройки позволяют определить, с помощью какого интерфейса задается значение этой настройки: консоль управления, CLI, API или Terraform. Метка Все интерфейсы указывает, что поддерживаются все перечисленные интерфейсы.
В зависимости от выбранного интерфейса, одна и та же настройка будет представлена по-разному, например:
- Backend flush after в консоли управления соответствует:
backend_flush_afterв gRPC API, CLI, Terraform;backendFlushAfterв REST API;
- Default transaction isolation в настройках уровня пользователя в консоли управления соответствует:
--default-transaction-isolationв CLI;default_transaction_isolationв gRPC API;defaultTransactionIsolationв REST API.
Зависимость настроек от класса хостов и размера хранилища
Значения некоторых настроек PostgreSQL могут быть автоматически скорректированы при изменении класса хостов или размера хранилища:
- Если значения не были заданы или не подходят новому классу/размеру, будут применены настройки по умолчанию для этого класса/размера.
- Если заданные вручную настройки подходят для нового класса/размера, они не будут изменены.
Список настроек, зависящих от класса хостов:
- Autovacuum max workers.
- Autovacuum vacuum cost delay.
- Autovacuum vacuum cost limit.
- Conn limit.
- Max connections.
- Shared buffers.
Список настроек, зависящих от размера хранилища:
Настройки на уровне кластера
Доступны следующие настройки:
-
Archive timeout
Все интерфейсыПериодичность (в миллисекундах) архивации лога транзакций PostgreSQL.
Минимальное значение —
10000, максимальное значение —86400000, по умолчанию —30000.Подробнее см. в описании настройки
archive_timeoutв документации PostgreSQL . -
Array nulls
Все интерфейсыУправляет распознаванием элементов
NULLпри вставке массива. Если настройка включена, то такие элементы распознаются как пустое полеNULL. В противном случае — как строка с текстом «NULL».По умолчанию настройка включена.
Подробнее см. в описании настройки
array_nullsв документации PostgreSQL . -
Auto explain log analyze
Консоль управленияAPITerraformОпределяет, будет ли статистика плана запроса выводиться в лог PostgreSQL автоматически, без использования команды
EXPLAIN. Это позволяет отслеживать неоптимизированные запросы. Настройка использует модульauto_explain, для его работы необходимо подключить библиотекуauto_explain.По умолчанию настройка выключена (статистика плана запроса не выводится в лог).
Подробнее см. в описании настройки
auto_explain.log_analyzeв документации PostgreSQL . -
Auto explain log buffers
Консоль управленияAPITerraformОпределяет, будет ли статистика использования буферного кеша выводиться в лог PostgreSQL через модуль
auto_explain. Работает аналогично параметруBUFFERSв командеEXPLAIN. Применяется только при включенной настройке Auto explain log analyze.По умолчанию настройка выключена (статистика использования буферного кеша не выводится в лог).
Подробнее см. в описании настройки
auto_explain.log_buffersв документации PostgreSQL . -
Auto explain log min duration
Консоль управленияAPITerraformМинимальное время выполнения запроса (в миллисекундах), при котором включается логирование в модуле
auto_explain.Минимальное значение —
-1(логирование отключено), максимальное значение —2147483647, по умолчанию —-1. При значении0логируются планы всех запросов независимо от времени их выполнения.Подробнее см. в описании настройки
auto_explain.log_min_durationв документации PostgreSQL . -
Auto explain log nested statements
Консоль управленияAPITerraformОпределяет, будет ли в модуле
auto_explainлогироваться выполнение вложенных запросов внутри SQL-функций. Применяется только при включенной настройке Auto explain log analyze.По умолчанию настройка выключена (логируются только планы верхнеуровневых запросов).
Подробнее см. в описании настройки
auto_explain.log_nested_statementsв документации PostgreSQL . -
Auto explain log timing
Консоль управленияAPITerraformОпределяет, будет ли в модуле
auto_explainлогироваться время выполнения отдельных этапов плана запроса. Работает аналогично параметруTIMINGв командеEXPLAIN. Применяется только при включенной настройке Auto explain log analyze.По умолчанию настройка выключена (время выполнения отдельных этапов не логируется).
Подробнее см. в описании настройки
auto_explain.log_timingв документации PostgreSQL . -
Auto explain log triggers
Консоль управленияAPITerraformОпределяет, будет ли в модуле
auto_explainвыводиться статистика выполнения триггеров. Применяется только при включенной настройке Auto explain log analyze.По умолчанию настройка выключена (статистика выполнения триггеров не выводится).
Подробнее см. в описании настройки
auto_explain.log_triggersв документации PostgreSQL . -
Auto explain log verbose
Консоль управленияAPITerraformОпределяет, будут ли в модуле
auto_explainдетализированы логи. Работает аналогично параметруVERBOSEв командеEXPLAIN. Применяется только при включенной настройке Auto explain log analyze.По умолчанию настройка выключена (логи не детализируются).
Подробнее см. в описании настройки
auto_explain.log_verboseв документации PostgreSQL . -
Auto explain sample rate
Консоль управленияAPITerraformДоля запросов, которые логируются с помощью модуля
auto_explainв каждой сессии. Применяется только при включенной настройке Auto explain log analyze.Минимальное значение —
0.0(никакие запросы не логируются), максимальное значение —1.0(логируются все запросы), по умолчанию —1.0.Подробнее см. в описании настройки
auto_explain.sample_rateв документации PostgreSQL . -
Autovacuum analyze scale factor
Все интерфейсыДоля измененных или удаленных записей в таблице, при которой процесс автоочистки
выполнит командуANALYZEдля сбора статистики.Минимальное значение —
0.0, максимальное значение —1.0, по умолчанию —0.0001.Подробнее см. в описании настройки
autovacuum_analyze_scale_factorв документации PostgreSQL . -
Autovacuum max workers
Консоль управленияAPITerraformCLIМаксимальное количество параллельно запущенных процессов автоочистки
. Автоочистка периодически запускается для каждой БД, определяет, какие из записей в таблицах помечены на удаление, и удаляет их.Минимальное значение —
1, максимальное значение —32. Значение по умолчанию зависит от выбранного класса хостов и равно количеству vCPU на одном хосте, но не может быть меньше3.Подробнее см. в описании настройки
autovacuum_max_workersв документации PostgreSQL . -
Autovacuum naptime
Консоль управленияAPITerraformЗадает минимальный интервал (в миллисекундах) между запусками процесса автоочистки
. Чтобы не нагружать БД при частых изменениях данных, увеличьте значение настройки.Минимальное значение —
1000, максимальное значение —86400000, по умолчанию —15000.Подробнее см. в описании настройки
autovacuum_naptimeв документации PostgreSQL . -
Autovacuum vacuum cost delay
Все интерфейсыВремя (в миллисекундах), в течение которого будет простаивать процесс автоочистки
при превышении предела стоимости.Минимальное значение —
-1(настройка не применяется), максимальное значение —100. Значение по умолчанию зависит от выбранного класса хостов:-
Если количество vCPU для выбранного класса хостов больше или равно 10, используется значение
5. -
В остальных случаях значение по умолчанию рассчитывается по формуле:
55 - 5 × <количество_vCPU_на_одном_хосте>
Подробнее см. в описании настройки
autovacuum_vacuum_cost_delayв документации PostgreSQL . -
-
Autovacuum vacuum cost limit
Все интерфейсыПредел стоимости, при превышении которого процесс автоочистки
будет остановлен на время, заданное параметром Autovacuum vacuum cost delay.Минимальное значение —
-1(настройка не применяется), максимальное значение —10000. Значение по умолчанию зависит от выбранного класса хостов и задается формулой:150 × <количество_vCPU_на_одном_хосте> + 400Пример:
Класс хоста vCPU Значение по умолчанию s2.small 4 150 × 4 + 400 = 1000m2.medium 6 150 × 6 + 400 = 1300Подробнее см. в описании настройки
autovacuum_vacuum_cost_limitв документации PostgreSQL . -
Autovacuum vacuum insert scale factor
Все интерфейсыДоля от размера таблицы, добавляемая к величине настройки Autovacuum vacuum insert threshold, по достижении которой запустится процесс автоочистки
.Минимальное значение —
0.0, максимальное значение —1.0, по умолчанию —0.2.Функциональность поддерживается в PostgreSQL начиная с версии 13.
Подробнее см. в описании настройки
autovacuum_vacuum_insert_scale_factorв документации PostgreSQL . -
Autovacuum vacuum insert threshold
Все интерфейсыЗадает количество строк, вставка которых в любую таблицу запустит процесс автоочистки
.Минимальное значение —
-1(настройка не применяется), максимальное значение —2147483647, по умолчанию —1000.Функциональность поддерживается в PostgreSQL начиная с версии 13.
Подробнее см. в описании настройки
autovacuum_vacuum_insert_thresholdв документации PostgreSQL . -
Autovacuum vacuum scale factor
Все интерфейсыДоля измененных или удаленных записей в таблице, при которой процесс автоочистки
запустит сборку и удаление мусора командойVACUUM.Минимальное значение —
0.0(настройка не применяется), максимальное значение —1.0, по умолчанию —0.00001.Подробнее см. в описании настройки
autovacuum_vacuum_scale_factorв документации PostgreSQL . -
Autovacuum work mem
Консоль управленияAPITerraformCLIОбъем памяти (в байтах), выделяемый каждому процессу автоочистки
.Минимальное значение —
-1(настройка не применяется), максимальное значение —2147483647, по умолчанию —-1.Подробнее см. в описании настройки
autovacuum_work_memв документации PostgreSQL . -
Backend flush after
Все интерфейсыМаксимальный объем записываемых служебным процессом данных (в килобайтах) в страничном кеше ядра ОС. При его превышении СУБД дает команду ОС записать данные на диск. Чем больше параметр, тем меньше вероятность замедления при записи данных на диск (в том числе, после завершения контрольной точки) командой
fsync.Минимальное значение —
0(настройка не применяется), максимальное значение —2048, по умолчанию —0.Подробнее см. в описании настройки
backend_flush_afterв документации PostgreSQL . -
Backslash quote
Все интерфейсыУправляет представлением кавычки в SQL-строке.
Допустимые значения:
backslash_quote(BACKSLASH_QUOTEдля Terraform, API и CLI) — кавычка может быть представлена как\'(эквивалентно значениюon);on(BACKSLASH_QUOTE_ONдля Terraform, API и CLI) — кавычка может быть представлена как\';off(BACKSLASH_QUOTE_OFFдля Terraform, API и CLI) — кавычка задается только обычным для SQL способом'';safe_encoding(BACKSLASH_QUOTE_SAFE_ENCODINGдля Terraform, API и CLI) — представление кавычки как\'допускается только для клиентских кодировок, не использующих\в многобайтных символах.
Значение по умолчанию —
safe_encoding.Подробнее см. в описании настройки
backslash_quoteв документации PostgreSQL . -
Bgwriter delay
Все интерфейсыЗадержка (в миллисекундах) между запусками процесса фоновой записи. Этот процесс записывает новые или измененные элементы буферного кеша PostgreSQL на диск. Задержка позволяет избежать многократной перезаписи страницы при каждом изменении и снизить нагрузку на диск.
Минимальное значение —
10, максимальное значение —10000, по умолчанию —200.Подробнее см. в описании настройки
bgwriter_delayв документации PostgreSQL . -
Bgwriter flush after
Консоль управленияAPITerraformОбъем обрабатываемых процессом фоновой записи данных (в килобайтах), при превышении которого СУБД дает команду ОС сохранить эти данные на диск. Параметр ограничивает объем
грязных
данных в страничном кеше ядра ОС и уменьшает вероятность замедления при выполнении командыfsyncв конце контрольной точки или когда ОС в фоне сбрасывает данные на диск.Минимальное значение —
0, максимальное значение —2048, по умолчанию —512.Подробнее см. в описании настройки
bgwriter_flush_afterв документации PostgreSQL . -
Bgwriter lru maxpages
Все интерфейсыМаксимальное число элементов буферного кеша PostgreSQL, которое процесс фоновой записи может сохранить за цикл активности. При нулевом значении фоновая запись отключается.
Минимальное значение —
0, максимальное значение —1073741823, по умолчанию —100.Подробнее см. в описании настройки
bgwriter_lru_maxpagesв документации PostgreSQL . -
Bgwriter lru multiplier
Все интерфейсыМножитель, на который при следующем запуске будет увеличено среднее число буферов, сохраняемых процессом фоновой записи.
Минимальное значение —
0, максимальное значение —10, по умолчанию —2.Подробнее см. в описании настройки
bgwriter_lru_multiplierв документации PostgreSQL . -
Bytea output
Все интерфейсыЗадает формат вывода бинарных строковых значений
(типbytea):hex(BYTEA_OUTPUT_HEXдля Terraform, API и CLI) — каждый байт задается двумя шестнадцатеричными символами, например 'SELECT '\xDEADBEEF';';escape(BYTEA_OUTPUT_ESCAPEдля Terraform, API и CLI) — стандартный формат PostgreSQL, только символы ASCII.
Значение по умолчанию —
hex.Подробнее см. в документации PostgreSQL
. -
Checkpoint completion target
Все интерфейсыДоля интервала между контрольными точками, определяющая максимальную продолжительность снятия контрольной точки. Например, при значении
0.5снятие контрольной точки будет завершено примерно за половину времени до следующей контрольной точки.Минимальное значение —
0.0, максимальное значение —1.0, по умолчанию —0.5.Подробнее см. в описании настройки
checkpoint_completion_targetв документации PostgreSQL . -
Checkpoint flush after
Консоль управленияAPITerraformОбъем области памяти (в килобайтах), занятый страницами для записи в контрольной точке. Те страницы, которые выходят за границы области, будут сброшены на диск и удалены из страничного кеша ОС.
Минимальное значение —
0, максимальное значение —2048, по умолчанию —256.Подробнее см. в описании настройки
checkpoint_flush_afterв документации PostgreSQL . -
Checkpoint timeout
Все интерфейсыИнтервал между контрольными точками (в миллисекундах).
Минимальное значение —
30000, максимальное значение —86400000, по умолчанию —300000.Подробнее см. в описании настройки
checkpoint_timeoutв документации PostgreSQL . -
Client connection check interval
Консоль управленияAPICLIПериод времени между проверками клиентских соединений при выполнении запросов (в миллисекундах). Проверка опрашивает сокет сервера для подключения и прерывает длительные запросы, если обнаруживает, что соединение закрыто.
Минимальное значение —
0(проверка не выполняется), максимальное значение —2147483647. По умолчанию установлено минимальное значение.Функциональность поддерживается в PostgreSQL начиная с версии 14.
Подробнее см. в описании настройки
client_connection_check_intervalв документации PostgreSQL . -
Client min messages
Все интерфейсыУровень сообщений логирования, отправляемых клиентским приложениям. Возможные значения (по возрастанию важности):
debug5,debug4,debug3,debug2,debug1,info,notice,warning,error,log,fatalиpanic(для Terraform, API, CLILOG_LEVEL_DEBUG5,LOG_LEVEL_DEBUG4,LOG_LEVEL_DEBUG3,LOG_LEVEL_DEBUG2,LOG_LEVEL_DEBUG1,LOG_LEVEL_INFO,LOG_LEVEL_NOTICE,LOG_LEVEL_WARNING,LOG_LEVEL_ERROR,LOG_LEVEL_LOG,LOG_LEVEL_FATALиLOG_LEVEL_PANIC).Значение по умолчанию —
NOTICE.Подробнее см. в описании настройки
client_min_messagesв документации PostgreSQL . -
Constraint exclusion
Все интерфейсыРазрешает планировщику использовать ограничения таблиц для оптимизации запросов.
Допустимые значения:
on(CONSTRAINT_EXCLUSION_ONдля Terraform, API и CLI) — задействовать ограничения для всех таблиц;off(CONSTRAINT_EXCLUSION_OFFдля Terraform, API и CLI) — не задействовать ограничения;partition(CONSTRAINT_EXCLUSION_PARTITIONдля Terraform, API и CLI) — задействовать ограничения только для дочерних таблиц и подзапросовUNION ALL.
Значение по умолчанию —
partition.Подробнее см. в описании настройки
constraint_exclusionв документации PostgreSQL . -
Cursor tuple fraction
Все интерфейсыЗадает для планировщика оценку доли строк, которые будут получены через курсор.
Минимальное значение —
0.0, максимальное значение —1.0, по умолчанию —0.1.Подробнее см. в описании настройки
cursor_tuple_fractionв документации PostgreSQL . -
Deadlock timeout
Консоль управленияAPITerraformCLIВремя ожидания (в миллисекундах), по истечении которого будет выполняться проверка состояния перекрестной блокировки.
Минимальное значение —
1, максимальное значение —2147483647, по умолчанию —1000.Подробнее см. в описании настройки
deadlock_timeoutв документации PostgreSQL . -
Default statistics target
Все интерфейсыМаксимальное число записей статистики по каждому столбцу таблиц БД. С помощью статистики планировщик оценивает число строк, возвращаемых запросами, чтобы выбрать наиболее подходящий план запроса.
Чтобы повысить точность оценок планировщика, увеличьте значение настройки.
Минимальное значение —
1, максимальное значение —10000, по умолчанию —1000.Подробнее см. в описании настройки
default_statistics_targetв документации PostgreSQL . -
Default transaction isolation
Все интерфейсыОпределяет уровень изоляции по умолчанию для новых транзакций SQL.
Допустимые значения:
read committed(TRANSACTION_ISOLATION_READ_COMMITTEDдля Terraform, API и CLI) — запрос видит только те строки, которые были зафиксированы до начала его выполнения.read uncommitted(TRANSACTION_ISOLATION_READ_UNCOMMITTEDдля Terraform, API и CLI) — поведение этого уровня изоляции в PostgreSQL идентичноread committed.repeatable read(TRANSACTION_ISOLATION_REPEATABLE_READдля Terraform, API и CLI) — все запросы в текущей транзакции видят только те строки, которые были зафиксированы перед первым выполненным в этой транзакции запросом на выборку или изменение данных.serializable(TRANSACTION_ISOLATION_SERIALIZABLEдля Terraform, API и CLI) — обеспечивает самый строгий уровень изоляции из всех приведенных выше. Поведение этого уровня изоляции в PostgreSQL аналогичноrepeatable read. Однако, если наложение операций чтения и записи параллельных сериализуемых транзакций несовместимо с их последовательным выполнением, произойдет откат одной из транзакций с ошибкойсбой сериализации
.
Значение по умолчанию —
read committed.Подробнее об уровнях изоляции см. в документации PostgreSQL
.Настройка действует на уровне кластера Managed Service for PostgreSQL, но ее можно переопределить на уровне пользователя.
-
Default transaction read only
Все интерфейсыУстанавливает режим
только чтение
в каждой новой транзакции для любых таблиц, кроме временных.По умолчанию настройка выключена (допускается чтение и запись).
Подробнее см. в описании настройки
default_transaction_read_onlyв документации PostgreSQL . -
Default with oids
Все интерфейсыДобавляет столбец
OIDс уникальным идентификатором строки. Настройка действует, если таблица создается:- либо без указания
WITH OIDSиWITHOUT OIDS; - либо с помощью команды
SELECT INTO.
По умолчанию настройка выключена (столбец
OIDне добавляется).Функциональность не поддерживается в PostgreSQL начиная с версии 12. Используйте настройку только для совместимости со старыми приложениями.
Подробнее см. в описании настройки
default_with_oidsв документации PostgreSQL . - либо без указания
-
Effective cache size
Все интерфейсыОценка эффективного размера дискового кеша (в байтах), доступного для одного запроса. Чем выше значение настройки, тем вероятнее планировщик применит сканирование по индексу. Более низкие значения повышают вероятность применения последовательного сканирования.
Минимальное значение —
0, максимальное значение —549755813888(512 ГБ), по умолчанию —107374182400(100 ГБ).Подробнее см. в описании настройки
effective_cache_sizeв документации PostgreSQL . -
Effective io concurrency
Все интерфейсыМаксимальное число параллельных операций дискового ввода-вывода в отдельной сессии работы с БД. Чем больше это число, тем больше операций PostgreSQL будет пытаться выполнить параллельно в отдельной сессии.
Минимальное значение —
0, максимальное значение —1000, по умолчанию —1.Подробнее см. в описании настройки
effective_io_concurrencyв документации PostgreSQL . -
Enable async append
Консоль управленияAPICLIРазрешает планировщику учитывать асинхронное выполнение плана запроса на разных хостах при добавлении данных из внешних источников.
По умолчанию настройка включена.
Функциональность поддерживается в PostgreSQL начиная с версии 14.
Подробнее см. в описании настройки
enable_async_appendв документации PostgreSQL . -
Enable bitmapscan
Все интерфейсыРазрешает планировщику сканировать битовую карту индекса при просмотре таблиц, даже если это явно не указано в запросе. Этот способ доступа похож на обычный индексный доступ, но происходит в два этапа:
-
Сканируется индекс (Bitmap Index Scan) и строится битовая карта, в которой отмечаются те строки, которые должны быть прочитаны в запросе.
-
Выполняется сканирование таблицы (Bitmap Heap Scan). При этом:
- страницы читаются последовательно (увеличивается шанс воспользоваться кешем ОС);
- каждая страница просматривается только один раз.
Настройка эффективна при повторных запросах к таблицам.
По умолчанию настройка включена.
Подробнее см. в описании настройки
enable_bitmapscanв документации PostgreSQL . -
-
Enable gathermerge
Консоль управленияAPICLIРазрешает планировщику использовать узел Gather Merge, чтобы выполнить слияние строк, полученных в результате работы параллельных процессов, и сохранить порядок, в котором эти строки были получены.
По умолчанию настройка включена.
Функциональность поддерживается в PostgreSQL начиная с версии 14.
Подробнее см. в описании настройки
enable_gathermergeв документации PostgreSQL . -
Enable hashagg
Все интерфейсыРазрешает планировщику строить хеш-таблицу из набора результатов, даже если это явно не указано в запросе. Настройка эффективна при частых запросах без сортировок к таблицам с большим объемом данных.
По умолчанию настройка включена.
Подробнее см. в описании настройки
enable_hashaggв документации PostgreSQL . -
Enable hashjoin
Все интерфейсыРазрешает планировщику строить объединения (
JOIN) таблиц по хеш-значениям строк, даже если это явно не указано в запросе. Настройка эффективна при работе с большими объемами данных или когда таблицы не отсортированы по столбцам, по которым производится объединение.По умолчанию настройка включена.
Подробнее см. в описании настройки
enable_hashjoinв документации PostgreSQL . -
Enable incremental sort
Все интерфейсыРазрешает планировщику использование инкрементной сортировки. Такой способ сортировки позволяет уменьшить время выполнения запроса и объем требуемой оперативной памяти, если необходимо упорядочить строки по нескольким столбцам, причем по одному или нескольким из них сортировка уже выполнена.
По умолчанию настройка включена.
Функциональность поддерживается в PostgreSQL начиная с версии 13.
Подробнее см. в описании настройки
enable_incremental_sortв документации PostgreSQL . -
Enable indexonlyscan
Все интерфейсыРазрешает планировщику использовать сканирование индекса таблиц без обращения к данным, даже если это явно не указано в запросе.
По умолчанию настройка включена.
Подробнее см. в описании настройки
enable_indexonlyscanв документации PostgreSQL . -
Enable indexscan
Все интерфейсыРазрешает планировщику использовать сканирование индекса таблиц, даже если это явно не указано в запросе.
По умолчанию настройка включена.
Подробнее см. в описании настройки
enable_indexscanв документации PostgreSQL . -
Enable material
Все интерфейсыРазрешает планировщику использовать запросы материализации.
По умолчанию настройка включена.
Подробнее см. в описании настройки
enable_materialв документации PostgreSQL . -
Enable mergejoin
Все интерфейсыРазрешает планировщику использовать слияние операций
JOINпри объединении таблиц.По умолчанию настройка включена.
Подробнее см. в описании настройки
enable_mergejoinв документации PostgreSQL . -
Enable nestloop
Все интерфейсыРазрешает планировщику использовать объединения (
JOIN) с вложенными циклами. При выключенной настройке планировщик будет использовать другие методы.По умолчанию настройка включена.
Подробнее см. в описании настройки
enable_nestloopв документации PostgreSQL . -
Enable parallel append
Все интерфейсыРазрешает планировщику использовать распараллеливание при добавлении данных.
По умолчанию настройка включена.
Подробнее см. в описании настройки
enable_parallel_appendв документации PostgreSQL . -
Enable parallel hash
Все интерфейсыРазрешает планировщику строить объединения по хешу строк с распараллеливанием хеширования. Настройка действует при включенной настройке Enable hashjoin.
По умолчанию настройка включена.
Подробнее см. в описании настройки
enable_parallel_hashв документации PostgreSQL . -
Enable partition pruning
Все интерфейсыРазрешает планировщику удалять ненужные партиции из планов запроса к партиционированным таблицам.
По умолчанию настройка включена.
Подробнее см. в описании настройки
enable_partition_pruningв документации PostgreSQL . -
Enable partitionwise aggregate
Все интерфейсыРазрешает планировщику группировать или агрегировать данные с учетом партиций, чтобы запросы выполнялись для каждой партиции отдельно.
По умолчанию настройка выключена (планировщик не учитывает партиционирование).
Подробнее см. в описании настройки
enable_partitionwise_aggregateв документации PostgreSQL . -
Enable partitionwise join
Все интерфейсыРазрешает планировщику использовать партиционирование таблиц при планировании запросов. Настройка позволяет выполнять запросы объединения партиционированных таблиц через объединение соответствующих партиций.
По умолчанию настройка выключена (планировщик не учитывает партиционирование).
Подробнее см. в описании настройки
enable_partitionwise_joinв документации PostgreSQL . -
Enable seqscan
Все интерфейсыРазрешает планировщику использовать планы последовательного сканирования таблиц.
По умолчанию настройка включена.
Подробнее см. в описании настройки
enable_seqscanв документации PostgreSQL . -
Enable sort
Все интерфейсыРазрешает планировщику использовать шаги с явной сортировкой.
По умолчанию настройка включена.
Подробнее см. в описании настройки
enable_sortв документации PostgreSQL . -
Enable tidscan
Все интерфейсыРазрешает планировщику использовать планы сканирования TID (tuple identifier) для ускорения выполнения запросов.
По умолчанию настройка включена (планировщик выполняет сканирование TID).
Подробнее см. в описании настройки
enable_tidscanв документации PostgreSQL . -
Escape string warning
Все интерфейсыВключает предупреждение о наличии в запросе символа
\в обычной строковой константе (с синтаксисом'...'). Настройка работает только при отключенном параметре Standard conforming strings.По умолчанию настройка включена.
Подробнее см. в описании настройки
escape_string_warningв документации PostgreSQL . -
Exit on error
Все интерфейсыВключает прерывание сессии в случае любой ошибки в запросе.
По умолчанию настройка выключена.
Подробнее см. в описании настройки
exit_on_errorв документации PostgreSQL . -
Force parallel mode
Все интерфейсыПозволяет распараллеливать запрос для тестирования:
off(FORCE_PARALLEL_MODE_OFFдля Terraform, API и CLI) — использовать параллельный режим, только когда ожидается увеличение производительности.on(FORCE_PARALLEL_MODE_ONдля Terraform, API и CLI) — принудительно распараллеливать все запросы, для которых это безопасно.regress(FORCE_PARALLEL_MODE_REGRESSдля Terraform, API и CLI) — эквивалентенon, но стандартный вывод такой же, как при выполнении в режимеoff.
Значение по умолчанию —
off.Подробнее см. в описании настройки
force_parallel_modeв документации PostgreSQL . -
From collapse limit
Все интерфейсыПока количество элементов в списке
FROMне превышает значение настройки, планировщик будет объединять вложенные запросы с внешним запросом. При уменьшении значения сокращается время планирования, но план запроса может стать менее эффективным.Минимальное значение —
1, максимальное значение —2147483647, по умолчанию —8.Подробнее см. в описании настройки
from_collapse_limitв документации PostgreSQL . -
Geqo
Консоль управленияAPIВключает генетическую оптимизацию запросов (GEQO
).Значение по умолчанию —
false(генетическая оптимизация выключена).Подробнее см. в описании настройки
geqoв документации PostgreSQL . -
Geqo effort
Консоль управленияAPIЗадает соотношение между временем на планирование запроса и качеством плана запроса в алгоритме GEQO
.Чем выше значение, тем дольше происходит планирование запроса, но в то же время повышается вероятность того, что будет выбран эффективный план запроса. Настройка не влияет на работу алгоритма напрямую, а используется для расчета значений по умолчанию для других настроек.
Минимальное значение —
1, максимальное значение —10, значение по умолчанию —5.Подробнее см. в описании настройки
geqo_effortв документации PostgreSQL . -
Geqo generations
Консоль управленияAPIЗадает количество итераций алгоритма GEQO
.Полезные значения находятся в диапазоне от
100до1000.Если значение настройки равно
0(по умолчанию), то количество итераций алгоритма выбирается на основании настройки Geqo pool size.Подробнее см. в описании настройки
geqo_generationsв документации PostgreSQL . -
Geqo pool size
Консоль управленияAPIЗадает количество особей в генетической популяции в алгоритме GEQO
.Не может равняться
1. Полезные значения находятся в диапазоне от100до1000.Если значение настройки равно
0(по умолчанию), то количество особей выбирается в зависимости от настройки Geqo effort и количества таблиц в запросе.Подробнее см. в описании настройки
geqo_pool_sizeв документации PostgreSQL . -
Geqo seed
Консоль управленияAPIЗадает начальное значение для генератора случайных чисел, используемого алгоритмом GEQO
при выборе путей в пространстве поиска порядка соединений.Изменение настройки изменяет набор исследуемых путей соединений и может как улучшить, так и ухудшить эффективность найденного пути.
Минимальное значение —
0, максимальное значение —1, значение по умолчанию —0.Подробнее см. в описании настройки
geqo_seedв документации PostgreSQL . -
Geqo selection bias
Консоль управленияAPIЗадает избирательное давление отбора внутри популяции, используемое в алгоритме GEQO
.Минимальное значение —
1.50, максимальное значение —2.00, значение по умолчанию —2.00.Подробнее см. в описании настройки
geqo_selection_biasв документации PostgreSQL . -
Geqo threshold
Консоль управленияAPIАлгоритм GEQO
будет использоваться для планирования только таких запросов, в которых количество таблиц в предложенииFROM больше или равно значению данной настройки.Для выполнения небольших запросов обычно лучше использовать стандартный планировщик, работающий методом полного перебора. Но для запросов с большим количеством таблиц метод полного перебора может занять больше времени, чем использование не самого оптимального плана.
Минимальное значение —
2, максимальное значение —2147483647, значение по умолчанию —12.Подробнее см. в описании настройки
geqo_thresholdв документации PostgreSQL . -
Gin pending list limit
Все интерфейсыМаксимальный размер (в байтах) очереди записей индекса GIN
. Очередь используется, когда включен режимfastupdate. Если размер очереди превышает заданный предел, записи из нее массово переносятся в основную структуру данных индекса GIN, а очередь очищается.Минимальное значение —
64, максимальное значение —2147483647(2 ГБ), по умолчанию —4194304.Подробнее см. в описании настройки
gin_pending_list_limitв документации PostgreSQL . -
Hash mem multiplier
Консоль управленияAPITerraformОпределяет максимальный объем памяти, доступный для операций с хеш-таблицами. Объем вычисляется умножением значения настройки на значение Work mem.
Минимальное значение —
0.0, максимальное значение —1000.0, по умолчанию —1.0.Функциональность поддерживается в PostgreSQL начиная с версии 13.
Подробнее см. в описании настройки
hash_mem_multiplierв документации PostgreSQL . -
Idle in transaction session timeout
Все интерфейсыВремя простоя открытой транзакции (в миллисекундах), при превышении которого будет завершена сессия с этой транзакцией.
Минимальное значение —
0, максимальное значение —2147483647, по умолчанию —0.Подробнее см. в описании настройки
idle_in_transaction_session_timeoutв документации PostgreSQL . -
Jit
Консоль управленияAPITerraformВключает JIT-компиляцию запросов
(just-in-time compilation) для PostgreSQL. Если настройка включена, то SQL-запросы компилируются в машинный код прямо во время выполнения. Это ускорит выполнение сложных запросов, которые требовательны к ресурсам CPU.По умолчанию настройка выключена.
Подробнее см. в описании настройки
jitв документации PostgreSQL . -
Join collapse limit
Все интерфейсыПока количество элементов в списке
FROMне превышает значение настройки, планировщик будет переносить в список явные инструкцииJOIN(за исключениемFULL JOIN). При уменьшении значения сокращается время планирования, но план запроса может стать менее эффективным.Минимальное значение —
1, максимальное значение —2147483647, по умолчанию —8.Подробнее см. в описании настройки
join_collapse_limitв документации PostgreSQL . -
Lo compat privileges
Консоль управленияAPICLITerraformОтключает проверку прав доступа для больших объектов. До версии 9.0 права доступа не действовали на большие объекты, и они были доступны для чтения и записи всем пользователям. Включите настройку, если требуется совместимость с версиями PostgreSQL ниже 9.0.
По умолчанию настройка выключена (проверки прав доступа включены).
Подробнее см. в описании настройки
lo_compat_privilegesв документации PostgreSQL . -
Lock timeout
Все интерфейсыОпределяет, сколько ждать освобождения блокировки (в миллисекундах). Заблокированными могут быть: таблица, индекс, строка или другие объекты базы данных. Если время ожидания для какой-либо операции истекло, то она прерывается.
Минимальное значение —
0(контроль длительности отключен, ожидать получения блокировки можно сколь угодно долго), максимальное значение —2147483647, по умолчанию —1000.Подробнее см. в описании настройки
lock_timeoutв документации PostgreSQL .Настройка действует на уровне кластера Managed Service for PostgreSQL, но ее можно переопределить на уровне пользователя.
-
Log checkpoints
Все интерфейсыВключает логирование выполнения контрольных точек и точек перезапуска сервера.
По умолчанию настройка выключена (логирование не ведется).
Подробнее см. в описании настройки
log_checkpointsв документации PostgreSQL . -
Log connections
Консоль управленияAPICLITerraformВключает логирование всех попыток подключения к серверу PostgreSQL, в том числе тех, для которых была успешно завершена аутентификация клиентов.
По умолчанию настройка выключена (логирование не ведется).
Подробнее см. в описании настройки
log_connectionsв документации PostgreSQL . -
Log disconnections
Консоль управленияAPICLITerraformВключает логирование завершения сессий.
По умолчанию настройка выключена (логирование не ведется).
Подробнее см. в описании настройки
log_disconnectionsв документации PostgreSQL . -
Log duration
Консоль управленияAPICLITerraformВключает логирование длительности каждой завершенной команды.
По умолчанию настройка выключена (логирование не выполняется).
Подробнее см. в описании настройки
log_durationв документации PostgreSQL . -
Log error verbosity
Консоль управленияAPICLITerraformЗадает уровень детализации информации в логе PostgreSQL для каждого сообщения. Уровни детализации лога в порядке увеличения информативности:
terse(LOG_ERROR_VERBOSITY_TERSEдля Terraform, CLI и API). Из сообщения об ошибке исключаются поляDETAIL,HINT,QUERYиCONTEXT.default(LOG_ERROR_VERBOSITY_DEFAULTдля Terraform, CLI и API). По умолчанию.verbose(LOG_ERROR_VERBOSITY_VERBOSEдля Terraform, CLI и API). В сообщение об ошибке включается код ошибкиSQLSTATE, а также имя файла с исходным кодом, имя функции и номер строки, сгенерировавшей ошибку.
Подробнее см. в описании настройки
log_error_verbosityв документации PostgreSQL . -
Log lock waits
Консоль управленияAPICLITerraformУправляет логированием продолжительных ожиданий блокировки. При включенной настройке в логе делается запись, когда в сессии PostgreSQL время ожидания получения блокировки превышает значение настройки Deadlock timeout.
По умолчанию настройка выключена.
Подробнее см. в описании настройки
log_lock_waitsв документации PostgreSQL . -
Log min duration sample
Консоль управленияAPITerraformНастройка работает так же, как Log min duration statement, но применяется только к командам, указанным в параметре Log statement sample rate.
При значении
0логируется время работы всех указанных команд.Минимальное значение —
-1(отключает логирование времени работы команд), максимальное значение —2147483647, по умолчанию —-1.Функциональность поддерживается в PostgreSQL начиная с версии 13.
Подробнее см. в описании настройки
log_min_duration_sampleв документации PostgreSQL . -
Log min duration statement
Консоль управленияAPICLITerraformЗадает минимальное время работы команды (в миллисекундах), при котором команда будет записана в лог.
При значении
0логируется время работы всех команд.Минимальное значение —
-1(отключает логирование времени работы), максимальное значение —2147483647, по умолчанию —-1.Подробнее см. в описании настройки
log_min_duration_statementв документации PostgreSQL .Настройка действует на уровне кластера Managed Service for PostgreSQL, но ее можно переопределить на уровне пользователя.
-
Log min error statement
Консоль управленияAPICLITerraformОпределяет уровень логирования ошибок выполнения команд SQL. Сообщение о выполнении команды будет записано в лог, если он завершится ошибкой с указанным уровнем важности или выше. Возможные значения:
DEBUG5,DEBUG4,DEBUG3,DEBUG2,DEBUG1,INFO,NOTICE,WARNING,ERROR,LOG,FATALиPANIC.По умолчанию используется
ERROR. Это означает, что в лог PostgreSQL будут записаны все команды, завершившиеся сообщением с уровнем важностиERROR,LOG,FATALиPANIC.Чтобы отключить запись большинства команд с ошибками, выберите значение
PANIC.Подробнее см. в описании настройки
log_min_error_statementв документации PostgreSQL . -
Log min messages
Консоль управленияAPICLITerraformОпределяет уровень логирования PostgreSQL. Записываются все сообщения выбранного уровня важности и выше. Возможные значения (по возрастанию важности):
DEBUG5,DEBUG4,DEBUG3,DEBUG2,DEBUG1,INFO,NOTICE,WARNING,ERROR,LOG,FATALиPANIC.По умолчанию используется
WARNING. Это означает, что в лог PostgreSQL будут записаны все сообщения с уровнем важностиWARNING,ERROR,LOG,FATALиPANIC.Чтобы отключить запись большинства сообщений, выберите значение
PANIC.Подробнее см. в описании настройки
log_min_messagesв документации PostgreSQL . -
Log parameter max length
Консоль управленияAPICLITerraformСокращает до указанного количества байтов значение каждого привязанного SQL-параметра, которые выводятся вместе с SQL-операторами при логировании всех сообщений, кроме сообщений об ошибках.
При значении
0логирование отключено.Минимальное значение —
-1(значения параметров логируются полностью), максимальное значение —1073741823. По умолчанию установлено минимальное значение.Функциональность поддерживается в PostgreSQL начиная с версии 13.
Подробнее см. в описании настройки
log_parameter_max_lengthв документации PostgreSQL . -
Log parameter max length on error
Все интерфейсыСокращает до указанного количества байтов значение каждого привязанного SQL-параметра, которые выводятся вместе с SQL-операторами при логировании сообщений об ошибках.
При значении
0логирование отключено.Минимальное значение —
-1(значения параметров логируются полностью), максимальное значение —1073741823. По умолчанию установлено минимальное значение.Функциональность поддерживается в PostgreSQL начиная с версии 13.
Подробнее см. в описании настройки
log_parameter_max_length_on_errorв документации PostgreSQL . -
Log recovery conflict waits
Консоль управленияAPICLIРазрешает фиксировать в логах задержки репликации, возникающие из-за конфликтов восстановления при чтении WAL. Записи в лог будут добавлены, если время ожидания разрешения конфликта превысит таймаут, заданный настройкой Deadlock timeout.
По умолчанию настройка выключена.
Функциональность поддерживается в PostgreSQL начиная с версии 14.
Подробнее см. в описании настройки
log_recovery_conflict_waitsв документации PostgreSQL . -
Log statement
Консоль управленияAPICLITerraformФильтр команд SQL, которые должны записываться в лог PostgreSQL:
none(LOG_STATEMENT_NONEдля Terraform, CLI и API) — фильтр отключен, команды SQL не записываются в лог.ddl(LOG_STATEMENT_DDLдля Terraform, CLI и API) — в лог записываются команды SQL, которые позволяют изменять определения структур данных (CREATE,ALTER,DROPи т. п.).mod(LOG_STATEMENT_MODдля Terraform, CLI и API) — в лог записываются команды SQL, попадающие под фильтрddl, и команды, позволяющие изменять данные (INSERT,UPDATEи т. п.).all(LOG_STATEMENT_ALLдля Terraform, CLI и API) — в лог записываются все команды SQL.
Значение по умолчанию —
none.Подробнее см. в описании настройки
log_statementв документации PostgreSQL .Настройка действует на уровне кластера Managed Service for PostgreSQL, но ее можно переопределить на уровне пользователя.
-
Log statement sample rate
Консоль управленияAPITerraformДоля команд SQL, которые будут записываться в лог дополнительно (помимо команд, записываемых по другим причинам).
Минимальное значение —
0.0, максимальное значение —1.0, по умолчанию —0.0.Функциональность поддерживается в PostgreSQL начиная с версии 13.
Подробнее см. в описании настройки
log_statement_sample_rateв документации PostgreSQL . -
Log temp files
Консоль управленияAPICLITerraformЗадает минимальный размер временного файла, при удалении которого информация о нем будет записана в лог PostgreSQL.
Минимальное значение —
-1(информация об удаленных файлах не логируется), максимальное значение —2147483647(2 ГБ), при значении0в лог записываются размеры и имена всех временных файлов. По умолчанию —-1.Подробнее см. в описании настройки
log_temp_filesв документации PostgreSQL . -
Log transaction sample rate
Консоль управленияAPITerraformДоля транзакций, команды из которых будут записываться в лог дополнительно (помимо команд, записываемых по другим причинам).
Минимальное значение —
0.0, максимальное значение —1.0, по умолчанию —0.0.Функциональность поддерживается в PostgreSQL начиная с версии 12.
Подробнее см. в описании настройки
log_transaction_sample_rateв документации PostgreSQL . -
Logical decoding work mem
Все интерфейсыМаксимальный объем памяти (в байтах), выделяемый для логического декодирования
перед записью на локальный диск. Настройка ограничивает объем памяти, используемый в соединении для логической репликации.Минимальное значение —
65536(64 КБ), максимальное значение —1099511627776(1 ТБ), по умолчанию –67108864(64 МБ).Функциональность поддерживается в PostgreSQL начиная с версии 13.
Подробнее см. в описании настройки
logical_decoding_work_memв документации PostgreSQL . -
Maintenance io concurrency
Все интерфейсыМаксимальное число параллельных операций дискового ввода-вывода при обслуживании PostgreSQL командами
VACUUM,CREATE INDEXиALTER TABLE ADD FOREIGN KEY, в отдельной сессии работы с БД. Чем больше это число, тем больше команд обслуживания PostgreSQL будет пытаться выполнить параллельно в отдельной сессии.Минимальное значение —
0, максимальное значение —1000, по умолчанию —10.Функциональность поддерживается в PostgreSQL начиная с версии 13.
Подробнее см. в описании настройки
maintenance_io_concurrencyв документации PostgreSQL . -
Maintenance work mem
Все интерфейсыМаксимальный объем памяти (в байтах) для операций обслуживания PostgreSQL, таких как
VACUUM,CREATE INDEXиALTER TABLE ADD FOREIGN KEY. Значение должно быть кратно 1024.Минимальное значение —
1048576(1 МБ), максимальное значение —137438953472(128 ГБ), по умолчанию —67108864(64 МБ).Подробнее см. в описании настройки
maintenance_work_memв документации PostgreSQL . -
Max connections
Консоль управленияAPICLITerraformМаксимальное число одновременных подключений к хосту PostgreSQL.
Минимальное значение —
1, максимальное значение и значение по умолчанию зависят от выбранного класса хостов и задаются формулой:200 × <количество_vCPU_на_одном_хосте>Для хостов с гарантированной долей vCPU ниже 100% (
burstable) используется фиксированное максимальное значение —200.По умолчанию установлено максимальное значение.
Важно
Managed Service for PostgreSQL резервирует 15 подключений для служебных пользователей на каждом PostgreSQL-хосте. Например, если для кластера выставлено значение настройки Max connections
100, то вы можете зарезервировать не больше 85 подключений для пользователей кластера.Подробнее см. в описании настройки
max_connectionsв документации PostgreSQL . -
Max locks per transaction
Консоль управленияAPICLITerraformСреднее количество объектов, которые могут быть заблокированы одной транзакцией. Отдельные транзакции могут блокировать больше объектов, если общее количество объектов, заблокированных всеми транзакциями, помещается в таблицу блокировок.
Минимальное значение —
10, максимальное значение —2147483647, по умолчанию —64.Подробнее см. в описании настройки
max_locks_per_transactionв документации PostgreSQL . -
Max logical replication workers
Консоль управленияМаксимальное число работающих процессов логической репликации PostgreSQL.
Минимальное значение —
4, максимальное значение —100. По умолчанию установлено минимальное значение.Подробнее см. в описании настройки
max_logical_replication_workersв документации PostgreSQL . -
Max parallel maintenance workers
Все интерфейсыМаксимальное число параллельно работающих процессов PostgreSQL, инициированных одной служебной командой (например,
CREATE INDEX).Минимальное значение —
0, максимальное значение —1024, по умолчанию —2.Подробнее см. в описании настройки
max_parallel_maintenance_workersв документации PostgreSQL . -
Max parallel workers
Все интерфейсыМаксимальное число параллельно работающих процессов PostgreSQL.
Минимальное значение —
0, максимальное значение —1024, по умолчанию —8.Подробнее см. в описании настройки
max_parallel_workersв документации PostgreSQL . -
Max parallel workers per gather
Все интерфейсыМаксимальное число параллельно работающих процессов, которые могут запускаться одним узлом Gather
.Минимальное значение —
0, максимальное значение —1024, по умолчанию —2.Подробнее см. в описании настройки
max_parallel_workers_per_gatherв документации PostgreSQL . -
Max pred locks per transaction
Консоль управленияAPICLITerraformСреднее количество объектов, которые могут быть заблокированы предикатными блокировками
за одну транзакцию. Отдельные транзакции могут блокировать больше объектов, чем указано в настройке, если общее количество объектов, заблокированных всеми транзакциями, помещается в таблицу блокировок.Минимальное значение —
10, максимальное значение —2147483647(2 ГБ), по умолчанию —64.Подробнее см. в описании настройки
max_pred_locks_per_transactionв документации PostgreSQL . -
Max prepared transactions
Консоль управленияAPICLITerraformМаксимальное число транзакций, которые могут одновременно находиться в подготовленном состоянии
.Минимальное значение —
0, максимальное значение —262143, по умолчанию —0.Подробнее см. в описании настройки
max_prepared_transactionsв документации PostgreSQL . -
Max replication slots
Консоль управленияМаксимальное число слотов репликации
. Слоты репликации автоматически обеспечивают механизм сохранения файлов лога WAL (Write-Ahead Log), пока они не будут получены всеми репликами.Минимальное значение —
20, максимальное значение —100. По умолчанию установлено минимальное значение.Подробнее см. в описании настройки
max_replication_slotsв документации PostgreSQL . -
Max slot wal keep size
Консоль управленияAPITerraformМаксимальный размер (в байтах) файлов лога WAL
(Write-Ahead Log), который хранится на хосте-мастере при репликации.Минимальное значение —
67108864(64 МБ). Максимальное значение — 50% от размера хранилища. Значение по умолчанию —-1(не ограничен). Значение должно быть кратно 1024.Функциональность поддерживается в PostgreSQL начиная с версии 13.
Подробнее см. в описании настройки
max_slot_wal_keep_sizeв документации PostgreSQL . -
Max standby streaming delay
Все интерфейсыВремя ожидания (в миллисекундах), по истечении которого хост-реплика в режиме горячего резерва начнет отменять запросы, конфликтующие с очередными изменениями в WAL
.Минимальное значение —
-1(время ожидания не ограничено), максимальное значение —2147483647, по умолчанию —30000(30 секунд).Подробнее см. в описании настройки
max_standby_streaming_delayв документации PostgreSQL . -
Max wal senders
Консоль управленияМаксимальное число параллельных соединений от хостов-источников потока репликации.
Минимальное значение —
20, максимальное значение —100. По умолчанию установлено минимальное значение.Подробнее см. в описании настройки
max_wal_sendersв документации PostgreSQL . -
Max wal size
Все интерфейсыМаксимальный размер (в байтах) файла WAL
, при достижении которого запускается снятие автоматических контрольных точек.Минимальное значение —
2, максимальное значение зависит от размера хранилища и равно 10% от этой величины, но не более8589934592(8 ГБ). По умолчанию установлено максимальное значение.Подробнее см. в описании настройки
max_wal_sizeв документации PostgreSQL . -
Max worker processes
Консоль управленияAPICLITerraformМаксимальное число фоновых процессов PostgreSQL, которое можно запустить в текущей системе.
Минимальное значение —
0, максимальное значение —1024, по умолчанию —8.Подробнее см. в описании настройки
max_worker_processesв документации PostgreSQL . -
Min wal size
Все интерфейсыОбъем дискового пространства (в байтах), занимаемый WAL
, при превышении которого старые файлы WAL в контрольных точках удаляются.Минимальное значение —
2, максимальное значение зависит от размера хранилища и равно 5% от этой величины, но не более1073741824(1 ГБ). По умолчанию установлено максимальное значение.Подробнее см. в описании настройки
min_wal_sizeв документации PostgreSQL . -
Old snapshot threshold
Консоль управленияAPICLITerraformМинимальное время (в миллисекундах), в течение которого можно пользоваться снимком состояния для выполнения запроса без риска получить ошибку.
Минимальное значение —
-1(не ограничено), максимальное значение —86400000(24 часа), по умолчанию —-1.Подробнее см. в описании настройки
old_snapshot_thresholdв документации PostgreSQL . -
Online analyze enable
Консоль управленияAPIВключает использование модуля
online_analyze, который обновляет статистику после операцийINSERT,UPDATE,DELETEилиSELECT INTOв целевых таблицах. -
Operator precedence warning
Все интерфейсыРазрешает анализатору запроса выдавать предупреждение для всех конструкций, которые поменяли поведение из-за изменения приоритетов команд в версии 9.5.
По умолчанию настройка выключена.
Функциональность не поддерживается в PostgreSQL начиная с версии 14.
Подробнее см. в описании настройки
operator_precedence_warningв документации PostgreSQL . -
Parallel leader participation
Все интерфейсыРазрешает ведущему процессу выполнять план запроса ниже узлов Gather и Gather Merge, не ожидая рабочие процессы.
По умолчанию настройка включена.
Подробнее см. в описании настройки
parallel_leader_participationв документации PostgreSQL . -
Pg hint plan debug print
Консоль управленияAPITerraformНастройка вывода и детализации отладочной информации модулем
pg_hint_plan. Действует при включенной настройке Pg hint plan enable hint. Возможные значения (по возрастанию детализации):off(PG_HINT_PLAN_DEBUG_PRINT_OFFдля Terraform и API) — вывод отключен;on(PG_HINT_PLAN_DEBUG_PRINT_ONдля Terraform и API) — по умолчанию;detailed(PG_HINT_PLAN_DEBUG_PRINT_DETAILEDдля Terraform и API);verbose(PG_HINT_PLAN_DEBUG_PRINT_VERBOSEдля Terraform и API).
-
Pg hint plan enable hint
Консоль управленияAPITerraformВключает использование модуля
pg_hint_planдля корректировки автоматических планов выполнения запросов, применяя так называемыеуказания
в виде простых описаний в особых SQL-комментариях. -
Pg hint plan enable hint table
Консоль управленияAPITerraformВключает использование таблицы
hint_plan.hints. Она содержитуказания
для модуляpg_hint_planи применяется, если нет возможности редактировать запросы. Таблица содержит столбцы:id— уникальный номер строки суказанием
. Этот столбец заполняется автоматически.norm_query_string— шаблон для выбора запросов, к которым будет относитьсяуказание
. Вместо констант используйте символ?. Пробельные символы в шаблоне являются значимыми.application_name— приложение-инициатор сессий, в которых будет действоватьуказание
.hint—указания
без обрамляющей разметки комментариев.
-
Pg hint plan message level
Консоль управленияAPITerraformУровень отладочных сообщений модуля
pg_hint_plan, которые будут попадать в лог PostgreSQL. Действует при включенной настройке Pg hint plan enable hint. Возможные значения:error;warning;notice;info(по умолчанию);log;debug.
-
Pg qualstats enabled
Консоль управленияAPICLIВключает использование модуля
pg_qualstatsдля сбора статистики по предикатам в операторахWHEREи блокахJOIN. Применяется для анализа наиболее часто вычисляемых предикатов запросов. -
Pg qualstats max
Консоль управленияAPICLIМаксимальное число отслеживаемых предикатов для модуля
pg_qualstats. Действует при включенной настройке Pg qualstats enabled.Минимальное значение —
100, максимальное значение —2147483647, по умолчанию —1000. -
Pg qualstats resolve oids
Консоль управленияAPICLIВключает восстановление имен таблиц по идентификатору
OIDв процессе сбора статистики запроса для модуляpg_qualstats. Настройка облегчает анализ данных, но требует больше дискового пространства для хранения статистики. Действует при включенной настройке Pg qualstats enabled.По умолчанию настройка выключена.
-
Pg qualstats sample rate
Консоль управленияAPICLIДоля запросов (число от 0 до 1), для которых выполняется сбор статистики модулем
pg_qualstats. Действует при включенной настройке Pg qualstats enabled. Особые значения настройки:0— отключает настройку;1— анализируются все запросы;-1— автоматический режим, доля запросов обратна к значению настройки Max connections и зависит от выбранного класса хостов.
По умолчанию используется значение
-1. -
Pg qualstats track constants
Консоль управленияAPICLIВключает отслеживание уже встреченных предикатов в последующих запросах при сборе статистики модулем
pg_qualstats. Действует при включенной настройке Pg qualstats enabled.По умолчанию настройка включена.
-
Plan cache mode
Консоль управленияAPITerraformОпределяет, какой тип плана запроса (общий или специализированный) будет использован при выполнении подготовленных команд
. Возможные значения:auto(PLAN_CACHE_MODE_AUTOдля Terraform и API) — автоматический выбор;force_custom_plan(PLAN_CACHE_MODE_FORCE_CUSTOM_PLANдля Terraform и API) — принудительно использовать специализированные планы;force_generic_plan(PLAN_CACHE_MODE_FORCE_GENERIC_PLANдля Terraform и API) — принудительно использовать общие планы.
Значение по умолчанию —
auto.Функциональность поддерживается в PostgreSQL начиная с версии 12.
Подробнее см. в документации PostgreSQL
. -
Plantuner fix empty table
Консоль управленияAPIРазрешает модулю
plantunerскрывать от планировщика отдельные индексы, чтобы они не использовались в планах запросов.По умолчанию настройка выключена.
-
Quote all identifiers
Все интерфейсыВключает принудительное обрамление кавычками всех идентификаторов при формировании SQL-запросов из базы данных, например, при выполнении операции
EXPLAIN.По умолчанию настройка выключена.
Подробнее см. в описании настройки
quote_all_identifiersв документации PostgreSQL . -
Random page cost
Все интерфейсыЗадает планировщику примерную стоимость чтения одной произвольной страницы с диска. Если значение этой настройки меньше, чем у Seq page cost, планировщик отдаст предпочтение сканированию по индексу.
Минимальное значение —
0, по умолчанию —1.Подробнее см. в описании настройки
random_page_costв документации PostgreSQL . -
Row security
Все интерфейсыУправляет обработкой запросов, к которым применима как минимум одна политика защиты строк
. При выключении настройки такие запросы будут выдавать ошибку.По умолчанию настройка включена.
Подробнее см. в описании настройки
row_securityв документации PostgreSQL . -
Search path
Все интерфейсыСписок имен схем БД через запятую. При обращении к объектам, размещенным в перечисленных схемах, можно не указывать имя схемы.
Значение по умолчанию —
$user, public(схема текущего пользователя и схемаpublic).Подробнее см. в описании настройки
search_pathв документации PostgreSQL . -
Seq page cost
Все интерфейсыЗадает планировщику примерную стоимость чтения одной страницы с диска при выполнении серии последовательных чтений.
Минимальное значение —
0, по умолчанию —1.Подробнее см. в описании настройки
seq_page_costв документации PostgreSQL . -
Session duration timeout
Консоль управленияAPICLIМаксимальное время жизни самой продолжительной активной сессии или транзакции (в миллисекундах). Применяется только для сессий в статусах
activeиidle in transaction.Чтобы настройка не влияла на производительность кластера, периодически проверяется самая длинная транзакция/сессия. Время между проверками выбирается случайным образом в интервале от 5 до 10 минут. Например, если задать значение настройки
1000, то сессия завершится в течение 1 секунды + 5–10 минут.Если задано значение больше чем значение по умолчанию, это может привести к увеличению размера БД и замедлению работы операционной системы.
Минимальное значение —
0(нет ограничений на время жизни активной сессии/транзакции), максимальное значение —2147483647, по умолчанию —43200000(12 часов). Минимальная гранулярность изменения настройки —1000.Подробнее о возможных статусах сессии см. в документации PostgreSQL
. -
Shared buffers
Консоль управленияAPICLITerraformОбъем памяти (в байтах), который PostgreSQL может использовать для буферов в разделяемой памяти (shared memory).
Минимальное значение —
131072(128 КБ), максимальное значение зависит от выбранного класса хостов и равно 80% от общего размера RAM хоста кластера Managed Service for PostgreSQL. По умолчанию установлено значение 25% от общего размера RAM, но не более 8 ГБ.Подробнее см. в описании настройки
shared_buffersв документации PostgreSQL . -
Shared preload libraries
Консоль управленияAPITerraformРазделенные запятыми имена библиотек общего пользования (shared libraries), которые будут загружаться при запуске сервера PostgreSQL. Библиотеки требуются для работы некоторых расширений PostgreSQL.
Подробнее см. в описании настройки
shared_preload_librariesв документации PostgreSQL . -
Standard conforming strings
Консоль управленияAPITerraformВключает прочтение символа
\в обычных строковых константах ('...') не как спецсимвола, а как обычного символа согласно стандарту SQL.По умолчанию настройка включена.
Подробнее см. в описании настройки
standard_conforming_stringsв документации PostgreSQL . -
Statement timeout
Консоль управленияAPICLITerraformМаксимальная длительность (в миллисекундах) выполнения команды, при превышении которой команда прерывается.
Минимальное значение —
0, максимальное значение —2147483647, по умолчанию —0.Подробнее см. в описании настройки
statement_timeoutв документации PostgreSQL . -
Synchronize seqscans
Все интерфейсыВключает синхронизацию обращений при последовательном сканировании больших таблиц, чтобы эти операции читали один блок примерно в одно и то же время. При выключении последовательное сканирование всегда будет начинаться с начала таблицы, как это было принято до версии 8.3.
По умолчанию настройка включена.
Подробнее см. в описании настройки
synchronize_seqscansв документации PostgreSQL . -
Synchronous commit
Все интерфейсыОпределяет, после какого этапа обработки WAL
сервер посчитает транзакцию завершенной.Допустимые значения:
Консоль управления/CLITerraformAPIon— транзакция подтверждается, если WAL записан на диск мастера и на диск каждой кворумной реплики.off— транзакция подтверждается, даже если данные еще не попали в WAL. Запись несинхронна, данные о транзакции могут быть потеряны в результате сбоя дисковой подсистемы.local— транзакция подтверждается, если WAL записан на диск мастера.remote_write— транзакция подтверждается, если WAL записан на диск мастера, все кворумные реплики приняли WAL и передали его операционной системе для записи на диск. В случае потери дисковой системы мастера и сбоя операционной системы на кворумных репликах данные транзакции с таким уровнем синхронизации могут быть утеряны.remote_apply— транзакция подтверждается, если WAL записан на диск мастера, все кворумные реплики приняли WAL и применили изменения из него.
Значение по умолчанию —
on.1или"SYNCHRONOUS_COMMIT_ON"— транзакция подтверждается, если WAL записан на диск мастера и на диск каждой кворумной реплики.2или"SYNCHRONOUS_COMMIT_OFF"— транзакция подтверждается, даже если данные еще не попали в WAL. Запись несинхронна, данные о транзакции могут быть потеряны в результате сбоя дисковой подсистемы.3или"SYNCHRONOUS_COMMIT_LOCAL"— транзакция подтверждается, если WAL записан на диск мастера.4или"SYNCHRONOUS_COMMIT_REMOTE_WRITE"— транзакция подтверждается, если WAL записан на диск мастера, все кворумные реплики приняли WAL и передали его операционной системе для записи на диск. В случае потери дисковой системы мастера и сбоя операционной системы на кворумных репликах данные транзакции с таким уровнем синхронизации могут быть утеряны.5или"SYNCHRONOUS_COMMIT_REMOTE_APPLY"— транзакция подтверждается, если WAL записан на диск мастера, кворумные реплики приняли WAL и применили изменения из него.
Значение по умолчанию —
"SYNCHRONOUS_COMMIT_ON".SYNCHRONOUS_COMMIT_ON— транзакция подтверждается, если WAL записан на диск мастера и на диск каждой кворумной реплики.SYNCHRONOUS_COMMIT_OFF— транзакция подтверждается, даже если данные еще не попали в WAL. Запись несинхронна, данные о транзакции могут быть потеряны в результате сбоя дисковой подсистемы.SYNCHRONOUS_COMMIT_LOCAL— транзакция подтверждается, если WAL записан на диск мастера.SYNCHRONOUS_COMMIT_REMOTE_WRITE— транзакция подтверждается, если WAL записан на диск мастера, все кворумные реплики приняли WAL и передали его операционной системе для записи на диск. В случае потери дисковой системы мастера и сбоя операционной системы на кворумных репликах данные транзакции с таким уровнем синхронизации могут быть утеряны.SYNCHRONOUS_COMMIT_REMOTE_APPLY— транзакция подтверждается, если WAL записан на диск мастера, все кворумные реплики приняли WAL и применили изменения из него.
Значение по умолчанию —
SYNCHRONOUS_COMMIT_ON.Подробнее см. в описании настройки
synchronous_commitв документации PostgreSQL .Настройка действует на уровне кластера Managed Service for PostgreSQL, но ее можно переопределить на уровне пользователя.
-
Temp buffers
Все интерфейсыМаксимальный объем памяти (в байтах), выделяемой для временных буферов в каждой сессии.
Минимальное значение —
100, максимальное значение —1073741823(1 ГБ), по умолчанию —8388608(8 МБ).Подробнее см. в описании настройки
temp_buffersв документации PostgreSQL . -
Temp file limit
Консоль управленияAPICLITerraformМаксимальный объем дискового пространства (в байтах), который один процесс сможет использовать для временных файлов. Транзакция, которая попытается превысить этот предел, будет отменена.
Большие запросы выполняются не в оперативной памяти, а на диске. Слишком большие запросы нагружают диск и мешают выполнению других запросов. Настройка предотвращает выполнение запросов, которые снижают производительность, ограничивая размер временных файлов.
Минимальное значение —
-1(нет ограничений), максимальное значение —2147483647(2 ГБ), по умолчанию —-1.Подробнее см. в описании настройки
temp_file_limitв документации PostgreSQL .Настройка действует на уровне кластера Managed Service for PostgreSQL, но ее можно переопределить на уровне пользователя.
-
Timezone
Все интерфейсыЧасовой пояс для вывода и ввода значений времени.
Значение по умолчанию —
Europe/Moscow.Подробнее см. в описании настройки
timezoneв документации PostgreSQL . -
Track activity query size
Консоль управленияAPITerraformОбъем памяти (в байтах), резервируемой в каждой активной сессии для хранения текста выполняемой в данной момент команды.
Минимальное значение —
100, максимальное значение —102400, по умолчанию —1024.Подробнее см. в описании настройки
track_activity_query_sizeв документации PostgreSQL . -
Transform null equals
Все интерфейсыВключает интерпретацию условия
выражение = NULLкаквыражение IS NULL. Условие истинно, если выражение имеет значениеNULL, и ложно в противном случае. Согласно стандарту SQL, сравнениевыражение = NULLвсегда возвращаетNULL(неизвестное значение).По умолчанию настройка выключена (действует стандарт SQL).
Подробнее см. в описании настройки
transform_null_equalsв документации PostgreSQL . -
Vacuum cleanup index scale factor
Все интерфейсыДоля строк в индексе, попавших в предыдущий срез статистики. При выполнении операции
VACUUMстатистика индекса считается устаревшей, если отношение числа добавляемых в индекс строк к текущему числу строк в индексе превышает указанную долю. В этом случае будет выполнено новое сканирование индекса.Минимальное значение —
0.0, максимальное значение —10000000000.0, по умолчанию —0.1.Функциональность не поддерживается в PostgreSQL начиная с версии 14.
Подробнее см. в описании настройки
vacuum_cleanup_index_scale_factorв документации PostgreSQL . -
Vacuum cost delay
Все интерфейсыВремя (в миллисекундах), в течение которого будет простаивать процесс выполнения команд
VACUUMиANALYZE, превысивший предел стоимости (см. настройку Vacuum cost limit).Минимальное значение —
0, максимальное значение —100, по умолчанию —0.Подробнее см. в описании настройки
vacuum_cost_delayв документации PostgreSQL . -
Vacuum cost limit
Все интерфейсыПредел стоимости, при накоплении которой процесс очистки
VACUUMбудет приостанавливаться (переходить в спящий режим).Минимальное значение —
1, максимальное значение —10000, по умолчанию —200.Подробнее см. в описании настройки
vacuum_cost_limitв документации PostgreSQL . -
Vacuum cost page dirty
Все интерфейсыУсловная стоимость такой операции очистки
VACUUM, при которой изменяется блок, не модифицированный ранее.Минимальное значение —
0, максимальное значение —10000, по умолчанию —20.Подробнее см. в описании настройки
vacuum_cost_page_dirtyв документации PostgreSQL . -
Vacuum cost page hit
Все интерфейсыУсловная стоимость очистки буфера, оказавшегося в общем кеше.
Минимальное значение —
0, максимальное значение —10000, по умолчанию —1.Подробнее см. в описании настройки
vacuum_cost_page_hitв документации PostgreSQL . -
Vacuum cost page miss
Все интерфейсыУсловная стоимость очистки буфера, который нужно прочитать с диска.
Минимальное значение —
0, максимальное значение —10000, по умолчанию —10.Подробнее см. в описании настройки
vacuum_cost_page_missв документации PostgreSQL . -
Vacuum failsafe age
Консоль управленияAPICLIМаксимальный возраст
замороженной
(уже завершенной) транзакции, измеряемый в количестве транзакций, запущенных после нее. По достижении этого показателя запускается очистка процессомVACUUM, чтобы избежать переполнения счетчика транзакций.Минимальное значение —
0, максимальное значение —2100000000, по умолчанию —1600000000.Функциональность поддерживается в PostgreSQL начиная с версии 14.
Подробнее см. в описании настройки
vacuum_failsafe_ageв документации PostgreSQL . -
Vacuum multixact failsafe age
Консоль управленияAPICLIМаксимальный возраст
замороженной
(уже завершенной) мультитранзакции , измеряемый в количестве мультитранзакций, запущенных после нее. По достижении этого показателя запускается очистка процессомVACUUM, чтобы избежать переполнения счетчика мультитранзакций.Минимальное значение —
0, максимальное значение —2100000000, по умолчанию —1600000000.Функциональность поддерживается в PostgreSQL начиная с версии 14.
Подробнее см. в описании настройки
vacuum_multixact_failsafe_ageв документации PostgreSQL . -
Wal keep size
Консоль управленияAPITerraformМинимальный размер устаревших сегментов лога (в байтах), сохраняемых в папке WAL
, чтобы при необходимости реплики могли их загрузить.Минимальное значение —
0(прошлые фрагменты не сохраняются для репликации), максимальное значение —2251799812636672(2 ТБ), по умолчанию —0.Функциональность поддерживается в PostgreSQL начиная с версии 13.
Подробнее см. в описании настройки
wal_keep_sizeв документации PostgreSQL . -
Work mem
Все интерфейсыБазовый объем памяти (в байтах), который будет использоваться во внутренних операциях при обработке запросов (например, для сортировки или хеш-таблиц), прежде чем будут задействованы временные файлы на диске.
Минимальное значение —
64, максимальное значение —2147483647(2 ГБ), по умолчанию —4194304(4 МБ).Подробнее см. в описании настройки
work_memв документации PostgreSQL . -
Xmlbinary
Все интерфейсыСпособ кодирования двоичных данных в XML. Возможные значения:
base64(XML_BINARY_BASE64для Terraform, API и CLI) — BASE64-кодирование;hex(XML_BINARY_HEXдля Terraform, API и CLI) — шестнадцатеричное кодирование.
Значение по умолчанию —
base64.Подробнее см. в описании настройки
xmlbinaryв документации PostgreSQL . -
Xmloption
Все интерфейсыТип преобразования XML-данных в символьные по умолчанию. Возможные значения:
document(XML_OPTION_DOCUMENTдля Terraform, API и CLI) — XML-документ;content(XML_OPTION_CONTENTдля Terraform, API и CLI) — фрагмент XML-документа.
Значение по умолчанию —
content.Подробнее см. в описании настройки
xmloptionв документации PostgreSQL .
Настройки на уровне пользователя
Эти настройки влияют на поведение PostgreSQL при работе с запросами пользователя:
-
Catchup timeout
Консоль управленияTerraformAPIМаксимально допустимое время отставания реплики от мастера (в секундах).
Если задано ненулевое значение настройки, то менеджер подключений Odyssey не разрешит подключиться к репликам, которые сильно отстают от мастера. Этот механизм позволяет защититься от чтения устаревших данных с таких реплик.
Odyssey периодически запрашивает у кластера информацию об отставании реплик. При попытке подключения к реплике, которая отстает от мастера на большее время, чем указано в настройке, подключение будет прервано. Odyssey вернет сообщение вида:
remote server read/write error: failed to wait replica for catchupМинимальное значение и значение по умолчанию —
0(можно подключиться к любым репликам вне зависимости от того, насколько они отстают от мастера). -
Conn limit
Консоль управленияAPICLIВ транзакционном пулинге (transaction pooling) настройка ограничивает количество одновременных активных соединений для пользователя. При использовании этого типа пулинга пользователь может открыть тысячи соединений, но одновременно работать смогут только
Nсоединений, гдеN— значение настройки.В сессионном пулинге (session pooling) настройка ограничивает количество соединений пользователя с каждым хостом в кластере PostgreSQL. При использовании этого типа пулинга значение настройки должно быть не меньше суммы всех соединений, которые могут быть открыты бэкендами пользовательского сервиса. Каждое открытое серверное соединение немного замедляет работу PostgreSQL на OLTP-нагрузке.
Для сессионного пулинга применяются следующие принципы:
-
При добавлении пользователя Managed Service for PostgreSQL по умолчанию резервирует для него 50 подключений к каждому хосту в кластере PostgreSQL. Минимальное количество подключений на пользователя — 1.
-
Суммарное количество подключений, зарезервированных для пользователей, не должно превышать значение параметра Max connections. Managed Service for PostgreSQL резервирует 15 служебных подключений на каждом хосте.
Например, если для кластера задана настройка
"max_connections": 100, то вы можете зарезервировать не больше 85 подключений для пользователей на каждый хост кластера. -
Рекомендуется разнести по разным пользователям разные сервисы, использующие PostgreSQL, и задать нужное значение настройки для каждого пользователя. Если при проблемах в одном сервисе возникнет большое количество соединений, другие сервисы не будут затронуты и смогут подключаться к PostgreSQL.
Эта настройка зависит от выбранного класса хостов.
-
-
Default transaction isolation
Консоль управленияAPICLIСм. описание настройки уровня кластера Default transaction isolation.
-
Grants
Консоль управленияAPICLITerraformНабор ролей, выданных пользователю.
-
Lock timeout
Консоль управленияAPICLIСм. описание настройки уровня кластера Lock timeout.
-
Log min duration statement
Консоль управленияAPICLIСм. описание настройки уровня кластера Log min duration statement.
Рекомендуется определить для каждого сервиса и соответствующего ему пользователя, что считается медленным выполнением запроса, и логировать только такие запросы. Например, для веб-сервиса медленным может считаться запрос, выполняющийся более одной секунды, а для сервиса построения отчетов — запрос, выполняющийся более 10 минут.
Подробнее см. в документации PostgreSQL
. -
Log statement
Консоль управленияAPICLIСм. описание настройки уровня кластера Log statement.
-
Login
Консоль управленияAPICLIОпределяет, может ли пользователь подключаться к кластеру PostgreSQL.
Значение по умолчанию —
true(пользователь может подключаться к кластеру). -
Pg audit log
Консоль управленияОпределяет, какие запросы пользователя попадут в лог для аудита.
Настройка имеет силу только если:
- к кластеру подключена библиотека
pgaudit; - к базе данных подключено расширение
pgaudit.
Возможные значения:
read— в лог попадут запросыSELECTиCOPY, когда источником данных выступает отношение или запрос.write— в лог попадут запросыINSERT,UPDATE,DELETE,TRUNCATEиCOPY, когда приемником данных выступает отношение.function— в лог попадут вызовы функций и блокиDO.role— в лог попадут выражения, связанные с управлением ролями и привилегиями:GRANT,REVOKE,CREATE/ALTER/DROP ROLE.ddl— в лог попадут всеDDL, которые не входят в классROLE.misc— в лог попадут вспомогательные команды:DISCARD,FETCH,CHECKPOINT,VACUUM,SET.misc_set— в лог попадут вспомогательные командыSET, например,SET ROLE.
Можно выбрать несколько значений. По умолчанию логи аудита для пользователя отключены.
Подробнее о настройке логов для аудита см. в разделе Использование pgaudit.
- к кластеру подключена библиотека
-
Pooling mode
Консоль управленияTerraformAPIПримечание
- В Terraform и gRPC API используется имя настройки
pool_mode. - В REST API используется имя настройки
poolMode.
Режим управления соединениями, который использует менеджер соединений Odyssey.
Возможные значения:
SESSION— сессионный режим.TRANSACTION— транзакционный режим.STATEMENT— режим запроса.
Значение по умолчанию —
SESSION. - В Terraform и gRPC API используется имя настройки
-
Prepared statements pooling
Консоль управленияРазрешает использовать подготовленные инструкции с объединением транзакций.
-
Synchronous commit
Консоль управленияAPICLIСм. описание настройки уровня кластера Synchronous commit.
-
Temp file limit
Консоль управленияAPICLIСм. описание настройки уровня кластера Temp file limit.
-
Wal sender timeout
Консоль управленияВремя (в миллисекундах), по истечении которого прерываются неактивные соединения репликации.
Функциональность поддерживается в PostgreSQL начиная с версии 12.