Skip to main content

Настройки конфигурации

note

Эта страница переведена при помощи нейросети GigaChat.

Логическая репликация требует установки нескольких параметров настройки. Большинство опций актуальны только для одной стороны репликации. Однако параметр max_replication_slots используется как на стороне публикатора, так и подписчика, но его значение различается для каждой из сторон.

Публикующие серверы

wal_level должен быть установлен в logical.

max_replication_slots должен быть установлен по крайней мере равным количеству ожидаемых подключений подписки плюс некоторый резерв для синхронизации таблиц.

max_wal_senders следует установить хотя бы таким же, как max_replication_slots, плюс число физических реплик, одновременно подключенных к системе.

Отправитель логической репликации также зависит от параметра wal_sender_timeout.

Подписчики

max_replication_slots должен быть установлен по крайней мере равным числу подписок, которые будут добавлены на подписчике, плюс некоторый резерв для синхронизации таблиц.

max_logical_replication_workers должен быть установлен по крайней мере равным числу подписок (для рабочих процессов лидера), плюс некоторый резерв для рабочих процессов синхронизации таблиц и параллельных применяющих рабочих процессов.

max_worker_processes может потребоваться скорректировать для размещения рабочих процессов репликации, по меньшей мере (max_logical_replication_workers + 1). Обратите внимание, что некоторые расширения и параллельные запросы также используют рабочие слоты из max_worker_processes.

max_sync_workers_per_subscription управляет степенью параллельности начальной копии данных во время инициализации подписки или при добавлении новых таблиц.

max_parallel_apply_workers_per_subscription контролирует степень параллельности потоковой передачи незавершенных транзакций с параметром подписки streaming = parallel.

Рабочие процессы логической репликации также зависят от параметров wal_receiver_timeout, wal_receiver_status_interval и wal_retrieve_retry_interval.