3.10. Клонирование и синхронизация экземпляра Postgres Pro #

В pg_probackup3 реализована команда catchup, которая позволяет создать копию экземпляра сервера Postgres Pro напрямую, не используя каталог резервных копий. Эта команда может быть полезна:

Особенности и ограничения catchup:

Чтобы подготовить экземпляр Postgres Pro к клонированию/синхронизации, настройте исходный сервер следующим образом:

Перед клонированием/синхронизацией экземпляра Postgres Pro убедитесь, что исходный сервер запущен и принимает подключения. Чтобы клонировать/синхронизировать экземпляр Postgres Pro, в системе с целевым сервером выполните команду catchup:

pg_probackup3 catchup -b режим_синхронизации --destination-pgdata=путь_к_целевому_каталогу_данных --stream [параметры_подключения]

Здесь режим_синхронизации может принимать следующие значения:

Указав параметр --stream, можно задать режим STREAM, при котором все необходимые файлы WAL передаются с исходного сервера по протоколу репликации.

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

Если в исходной базе данных есть табличные пространства, которые должны располагаться в других каталогах в целевой системе, задайте также параметр --tablespace-mapping:

pg_probackup3 catchup -b режим_синхронизации --destination-pgdata=путь_к_целевому_каталогу_данных --stream --tablespace-mapping=СТАРЫЙ_КАТАЛОГ=НОВЫЙ_КАТАЛОГ

Чтобы операция catchup выполнялась в несколько параллельных потоков, задайте число потоков с помощью параметра --threads или --num-write-threads и --num-validate-threads:

pg_probackup3 catchup -b режим_синхронизации --destination-pgdata=путь_к_целевому_каталогу_данных --stream --threads=число_потоков