Резервные копии

Резервные копии PipelineDB можно сделать с использованием инструментов pipeline-dump или pipeline-dumpall. Они работают также как и аналогичные инструменты PostgreSQL pg_dump и pg_dumpall, с добавленной возможностью экспорта непрерывных представлений.

Порядок использования:

Usage: pipeline-dump [OPTION]... [DBNAME]

Общие параметры: -f, --file=FILENAME имя выходного файла или каталога -F, --format=c|d|t|p формат выходного файла (пользовательский, каталог, tar, обычный текст (по умолчанию)) -j, --jobs=NUM выгрузить данное количество параллельных задач -v, --verbose режим расширенного вывода -V, --version вывод информации о версии, затем выйти -Z, --compress=0-9 уровень сжатия для сжимаемых форматов --lock-wait-timeout=TIMEOUT сбой после ожидания времени TIMEOUT блокировки таблицы -?, --help показать данную справку, затем выйти

Опции, управляющие содержимым вывода: -a, --data-only выгрузить только данные, без схемы -b, --blobs включить большие объекты в выгрузку -c, --clean очистить (удалить) объекты базы данных перед повторным созданием -C, --create включить команды для создания базы данных в выгрузку -E, --encoding=ENCODING выгрузить данные в кодировке ENCODING -n, --schema=SCHEMA выгрузить только указанную(-ые) схему(-ы) -N, --exclude-schema=SCHEMA НЕ выгружать указанную(-ые) схему(-ы) -o, --oids включить OID в выгрузку -O, --no-owner пропустить восстановление владения объектом в формате обычного текста -s, --schema-only выгрузить только схему, без данных -S, --superuser=NAME имя суперпользователя для использования в формате обычного текста -t, --table=TABLE выгрузить только указанную(-ые) таблицу(-ы) -T, --exclude-table=TABLE НЕ выгружать указанную(ые) таблицу(ы) -x, --no-privileges не выгружать привилегии (grant/revoke) --binary-upgrade только для использования утилитами обновления --column-inserts выгружать данные как команды INSERT с именами столбцов --disable-dollar-quoting отключить использование долларовых кавычек, использовать стандартные кавычки SQL --disable-triggers отключить триггеры во время восстановления «только данные» --exclude-table-data=TABLE НЕ выгружать данные для указанной(-ых) таблицы(-ц) --if-exists использовать IF EXISTS при удалении объектов --inserts выгружать данные как команды INSERT, а не COPY --no-security-labels не выгружать назначения меток безопасности --no-synchronized-snapshots не использовать синхронизированные снимки в параллельных задачах --no-tablespaces не выгружать назначения табличных пространств --no-unlogged-table-data не выгружать данные незарегистрированной таблицы ----quote-all-identifiers заключить все идентификаторы в кавычки, даже если они не являются ключевыми словами --section=SECTION выгрузить именованный раздел (pre-data, data или post-data) --serializable-deferrable подождать, пока выгрузка не сможет выполняться без ошибок --use-set-session-authorization использовать команды SET SESSION AUTHORIZATION вместо команд ALTER OWNER для установки прав собственности

Параметры подключения: -d, --dbname=DBNAME база данных для выгрузки -h, --host=HOSTNAME хост сервера или каталог сокетов базы данных -p, --port=PORT номер порта сервера базы данных -U, --username=NAME подключиться от имени указанного пользователя базы данных -w, --no-password никогда не запрашивать пароль -W, --password принудительно запрашивать пароль (должно происходить автоматически) --role=ROLENAME выполнить SET ROLE перед выгрузкой

Если имя базы данных не указано, то используется значение переменной среды PGDATABASE.

Сообщайте об ошибках по адресу <eng@pipelinedb.org>.

Экспорт отдельных непрерывных представлений

Для экспорта одного непрерывного представления необходимо явно выгрузить и само непрерывное представление, и связанную с ним таблицу материализованного представления, как показано ниже:

pipeline-dump -t <CV name> -t <CV name>_mrel # <-- Обратите внимание на окончание "_mrel"

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

Для восстановления резервной копии, созданной с помощью pipeline-dump, просто передайте ее вывод клиенту pipeline:

pipeline-dump > backup.sql pipeline -f backup.sql