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

Восстановление данных из дельта-копии

Шаги сценария

  1. Пользователь заполняет конфигурационный файл Copywala, обязательно добавляя в него параметр backup_destination_uri. В качестве значения параметра указывается путь к папке хранения дельта-копии и родительской полной копии. Путь соответствует указанному при создании РК.

  2. Пользователь инициирует восстановление резервной копии через CLI компонента Copywala командой copywala restore.

    Справка по команде copywala restore

    Описание:

    Восстановление данных из резервной копии.

    Синтаксис:

        
    copywala restore <archive uri or path> [flags]

    Обязательные параметры:

    • <archive uri or path> – путь к CWL-архиву резервной копии из которой требуется восстановить данные.

    • Если резервная копия содержит табличные пространства (tablespace), при вызове команды обязательно укажите один из флагов:

      ФлагОписание
      -t|--tablespace-mapping </old-tablespace=/new-tablespace>Задает соответствие между путями табличных пространств (tablespace) в резервной копии и их расположением на целевом сервере. Используется для восстановления табличных пространств в другое место. Для нескольких табличных пространств каждое соответствие пути исходного и целевого расположения рекомендуется указывать отдельным флагом -t|--tablespace-mapping. Пример значения: --tablespace-mapping="/pgdata/tablespaces/Tbl_t=/data/tbl_t"
      --allow-default-tablespacesИспользовать пути табличных пространств, сохраненных во время создания резервной копии. Имеет приоритет перед настройками, задаваемыми через флаг -t|--tablespace-mapping
    примечание

    Если в команде используется URI, указывающий подключение к DDBoost через S2, его необходимо обязательно заключать в двойные кавычки.

    Это требование связано с тем, что URI содержит символ &, который интерпретируется Bash как оператор фонового запуска команды.

    Ниже приведен пример для команды copywala cwl info:

        
    copywala cwl info "s2://<s2-host>/<ddboost-storage-unit>/path/in/ddboost/storage/unit?driver=ddboost&data_domain_host=<ddboost-host>"

    Опциональные параметры:

    [flags] – доступны следующие флаги:

    ФлагОписание
    -h|--helpПоказать справку по команде
    -c|--config <path to copywala config>Использовать конфигурационный файл, отличный от файла по умолчанию: /etc/pbr/copywala.yaml
    --allow-default-tablespacesИспользовать пути табличных пространств, сохраненных во время создания резервной копии. Имеет приоритет перед настройками, задаваемыми через флаг -t|--tablespace-mapping
    --auto-create-tablespaces-dirsАвтоматически создает директории назначения для табличных пространств, переданных в флаге -t|--tablespace-mapping. Использование флага позволяет выполнять восстановление табличных пространств с изменением их расположения без предварительного ручного создания целевых каталогов.
    --cpuprofile <path to file>Включает сбор профиля использования CPU и сохраняет результаты в указанный файл (<path to file>) для последующего анализа производительности
    -d|–destination <archive uri>Директория, в которую необходимо произвести восстановление
    --dry-runПроверка корректности конфигурационного файла и возможности восстановления из заданной резервной копии
    -t|--tablespace-mapping </old-tablespace=/new-tablespace>Задает соответствие между путями табличных пространств (tablespace) в резервной копии и их расположением на целевом сервере. Используется для восстановления табличных пространств в другое место. Для нескольких табличных пространств каждое соответствие пути исходного и целевого расположения рекомендуется указывать отдельным флагом -t|--tablespace-mapping. Пример значения: --tablespace-mapping="/pgdata/tablespaces/Tbl_t=/data/tbl_t"
  3. Продукт выполняет команду, цепочка резервных копий восстанавливается в соответствии с командой: либо последовательно от полной копии (full) к целевой (delta), либо наоборот — от целевой к полной.

Важно

При восстановлении резервной копии командой copywala restore дополнительные файлы из CWL-архива не восстанавливаются и игнорируются. Для их извлечения используйте отдельную команду copywala cwl extra-files extract.

Исключительные сценарии

В CLI выводится сообщение об ошибке для случаев:

  • Не указан или указан неверно backup_destination_uri.
  • У пользователя нет прав на запись данных в каталог PGDATA.
  • У пользователя нет прав на чтение файла с РК.
  • У пользователя недостаточно свободного места на диске для выполнения восстановления РК.