Перейти к основному содержимому

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

примечание

Эта страница переведена при помощи нейросети 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.