26.2. Параметры управления восстановлением

По умолчанию процесс восстановления производится вплоть до окончания журналов WAL. Нижеуказанные параметры могут использоваться, чтобы остановить процесс восстановления в более ранней точке. Лишь один из параметров recovery_target, recovery_target_name, recovery_target_time, или recovery_target_xid может быть использован; если в конфигурационном файле их несколько, то будет использоваться последний.

recovery_target= 'immediate'

Данный параметр указывает, что процесс восстановления должен завершиться, как только будет достигнуто целостное состояние, т. е. как можно раньше. При восстановлении из оперативной резервной копии, это будет точкой, в которой завершился процесс резервного копирования.

Технически, это строковый параметр, но значение 'immediate' единственно допустимое в данный момент.

recovery_target_name (string)

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

recovery_target_time (timestamp)

Данный параметр указывает точку времени, вплоть до которой будет производиться восстановление. Точность этой точки останова также зависит от recovery_target_inclusive.

recovery_target_xid (string)

Параметр указывает идентификатор транзакции, вплоть до которой необходимо произвести процедуру восстановления. Имейте в виду, что несмотря на то, что при старте идентификаторы транзакций назначаются последовательно, завершаться они могут в ином порядке. Восстанавливаемые транзакции это те, что были зафиксированы до указанной (и, возможно, включая её). Точность точки останова также зависит от recovery_target_inclusive.

Следующие параметры уточняют целевую точку восстановления и оказывают влияние на процесс при её достижении:

recovery_target_inclusive (boolean)

Указывает на необходимость остановки сразу после (true), либо до (false) достижения целевой точки. Применяется одновременно с recovery_target_time, либо recovery_target_xid. Этот параметр управляет тем, нужно ли восстанавливать транзакции, у которых время фиксации либо идентификатор в точности совпадает со значением соответствующего параметра. Значение по умолчанию — true.

recovery_target_timeline (string)

Указывает линию времени для восстановления. По умолчанию производится восстановление той же линии времени, которая была текущей в момент создания базовой резервной копии. Со значением latest восстанавливаться будет последняя линия времени, найденная в архиве, что полезно для резервного сервера. Иное значение параметра может потребоваться в более сложной ситуации повторного восстановления, когда необходимо вернуться к состоянию, которое само было достигнуто после восстановления на момент времени. Это обсуждается в Подразделе 24.3.5.

pause_at_recovery_target (boolean)

Указывает на необходимость сделать паузу при достижении целевой точки восстановления. По умолчанию true. Пауза позволяет выполнить запросы к базе данных, чтобы убедиться в корректности достигнутой точки восстановления. Для снятия с паузы нужно вызвать pg_xlog_replay_resume(), что в итоге приведёт к завершению восстановления. Если же окажется, что мы ещё не достигли желаемой точки восстановления, то необходимо остановить сервер, установить более позднюю точку восстановления и заново стартовать сервер для продолжения процесса восстановления.

Этот параметр не действует, если не доступен hot_standby или не указана точка восстановления.