Содержание
Чтобы создать резервную копию, выполните следующую команду:
pg_probackup3 backup -Bкаталог_копий
--instance=имя_экземпляра
-bрежим_копирования
-sисточник_копирования
-iид_резервной_копии
Здесь режим_копирования
может принимать следующие значения: FULL
, DELTA
и PTRACK
.
А источник_копирования
может принимать одно из следующих значений: DIRECT
, BASE
и PRO
.
Некоторые параметры можно не указывать, в зависимости от цели пользователя:
Если
режим_копирования
не указан, по умолчанию используется режимFULL
.PRO
— значение по умолчанию дляисточник_копирования
.Если идентификатор резервной копии не указан явно в теле запроса,
ид_резервной_копии
примет значение даты и времени, когда резервная копия была создана.Если идентификатор резервной копии указан и включает в себя путь к каталогу,
каталог_копий
иимя_экземпляра
можно не указывать. Например: -i /mnt/ramdisk/backups/2.backup.Если путь к каталогу данных не указан ни через
каталог_копий
, ни через параметр--backup-id
, текущий каталог будет использоваться в качестве каталога по умолчанию.Если опустить идентификатор родительской копии при выполнении инткрементального копирования, pg_probackup3 использует последнюю подходящую копию из цепочки копий. Если родительскую резервную копию подобрать не удастся, процесс копирования завершится ошибкой.
Если указан параметр
--from-full
, инкрементальная резервная копия будет создана из последней родительской полной копии.
Режим ARCHIVE используется в качестве режима доставки WAL по умолчанию.
Чтобы создать полную копию в режиме доставки WAL ARCHIVE, выполните:
pg_probackup3 backup -Bкаталог_копий
--instance=имя_экземпляра
-b FULL
Резервное копирование ARCHIVE требует организации непрерывного архивирования, посредством которого считываются сегменты WAL, требующиеся для восстановления согласованного состояния кластера на момент создания копии.
Чтобы сделать полную резервную копию в потоковом (STREAM) режиме, добавьте флаг --stream
к команде, показанной выше:
pg_probackup3 backup -Bкаталог_копий
--instance=имя_экземпляра
-b FULL --stream [--temp-slot]
Необязательный параметр --temp-slot
обеспечивает наличие необходимых сегментов в случае прокрутки WAL до завершения резервного копирования.
Примечание
Хотя --temp-slot
и является необязательным флагом, он может влиять на успех резервного копирования.
В отличие от копий ARCHIVE, копии типа STREAM включают все сегменты WAL, необходимые для восстановления согласованного состояния кластера на момент создания копии.
В процессе выполнения команды backup pg_probackup3 передаёт файлы WAL, содержащие записи от Start LSN
до Stop LSN
, в файл с резервной копией.
Даже если вы используете непрерывное архивирование, копирование в режиме STREAM может быть полезно в следующих случаях:
Копии типа STREAM могут быть восстановлены на сервере, не имеющем файлового доступа к архиву WAL.
Копии типа STREAM позволяют восстановить состояние кластера на тот момент времени, для которого уже нет файлов WAL.
Чтобы заархивировать каталог, размещённый вне каталога данных, воспользуйтесь необязательным параметром --external-dirs
, в котором можно задать путь к нужному каталогу. Если вы хотите заархивировать несколько внешних каталогов, их пути нужно разделить двоеточиями в Linux.
Например, чтобы в системе Linux включить каталоги /etc/dir1
и /etc/dir2
в полную копию экземпляра имя_экземпляра
, которая будет размещаться в каталоге_копий
, выполните:
pg_probackup3 backup -Bкаталог_копий
--instance=имя_экземпляра
-b FULL --external-dirs=/etc/dir1:/etc/dir2
Например, чтобы включить каталоги C:\dir1
и C:\dir2
в полную копию, в Windows нужно выполнить:
pg_probackup3 backup -Bкаталог_копий
--instance=имя_экземпляра
-b FULL --external-dirs=C:\dir1;C:\dir2
Для каждого внешнего каталога pg_probackup3 создаёт отдельный подкаталог в каталоге резервной копии и рекурсивно копирует в него всё содержимое внешнего каталога. Так как внешние каталоги, попадающие в разные резервные копии, не обязательно должны быть одинаковыми, при восстановлении кластера из инкрементальной копии будут восстановлены только те каталоги, которые относятся именно к ней. Внешние каталоги, сохранённые в предыдущих копиях, восстановлены не будут.
Чтобы нужные каталоги включались в каждую резервную копию вашего кластера, их список можно сохранить в файле конфигурации pg_probackup3.conf
, воспользовавшись командой set-config с ключом --external-dirs
.
Примечание
Внешние каталоги не поддерживаются в режиме BASE.