---
metadata:
  - name: generator
    content: Diplodoc Platform v5.44.0
alternate:
  - https://ydb-platform--ydb.viewer.diplodoc.com/en/concepts/backup.md
  - https://ydb-platform--ydb.viewer.diplodoc.com/ru/concepts/backup.md
sourcePath: ru/core/concepts/backup.md
---
# Концепции резервного копирования

YDB обеспечивает сохранность данных при аппаратных сбоях за счёт [репликации и отказоустойчивости](https://ydb-platform--ydb.viewer.diplodoc.com/ru/concepts/topology.md#cluster-config). Однако репликация не защищает от **логических ошибок**: случайный `DROP TABLE`, ошибочный массовый `UPDATE` или `DELETE` будут воспроизведены на все реплики. Для защиты от таких сценариев необходимо **резервное копирование** — отдельная копия данных, из которой можно восстановиться.

## Полное резервное копирование {#full-backup}

Полная резервная копия — это снимок данных таблиц на определённый момент времени. YDB предоставляет несколько способов создания полных резервных копий, от простых к более функциональным.

### Копирование таблиц внутри кластера {#copy-table}

Самый простой способ — создать копию таблицы (или нескольких таблиц) внутри того же кластера с помощью команды [`ydb tools copy`](https://ydb-platform--ydb.viewer.diplodoc.com/ru/reference/ydb-cli/tools-copy.md). Копия создаётся атомарно из согласованного снимка и использует механизм копирования при записи, поэтому операция выполняется быстро.

Подходит для:

- быстрого создания «страховочной» копии перед опасной операцией;
- клонирования данных для тестирования.

{% note warning %}

Копия хранится в том же кластере, что и исходные данные. Она защищает от логических ошибок, но не от потери кластера.

{% endnote %}

### Дамп в файловую систему {#dump}

Команды [`ydb tools dump`](https://ydb-platform--ydb.viewer.diplodoc.com/ru/reference/ydb-cli/export-import/tools-dump.md) и [`ydb tools restore`](https://ydb-platform--ydb.viewer.diplodoc.com/ru/reference/ydb-cli/export-import/tools-restore.md) позволяют выгрузить данные в локальную файловую систему и восстановить их обратно.

Подходит для:

- локальной разработки и тестирования;
- небольших баз данных;
- создания копии на отдельном носителе.

### Экспорт в S3-совместимое хранилище {#s3}

Команды [`ydb export s3`](https://ydb-platform--ydb.viewer.diplodoc.com/ru/reference/ydb-cli/export-import/export-s3.md) и [`ydb import s3`](https://ydb-platform--ydb.viewer.diplodoc.com/ru/reference/ydb-cli/export-import/import-s3.md) позволяют выгружать и загружать данные во внешнее S3-совместимое хранилище.

Подходит для:

- аварийного восстановления (данные хранятся вне кластера);
- миграции данных между кластерами;
- долгосрочного архивирования.

## Инкрементальное резервное копирование {#incremental-backup}

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

Инкрементальные резервные копии организованы в **цепочку**:

```text
Полная копия → Инкремент₁ → Инкремент₂ → ... → Инкрементₙ
```

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

Инкрементальное резервное копирование реализуется с помощью [коллекций резервных копий](https://ydb-platform--ydb.viewer.diplodoc.com/ru/concepts/datamodel/backup-collection.md).

{% note info %}

В настоящее время поддерживаются только [строковые таблицы](https://ydb-platform--ydb.viewer.diplodoc.com/ru/concepts/datamodel/table.md#row-oriented-tables).

{% endnote %}

## Сравнение подходов {#comparison}

#|
|| **Способ** | **Где хранится** | **Инкременты** | **Сценарии** ||
|| [Копирование таблиц внутри кластера](#copy-table) | В кластере | Нет | Быстрая копия перед опасной операцией ||
|| [Дамп в файловую систему](#dump) | Файловая система | Нет | Разработка, тестирование, небольшие БД ||
|| [Экспорт в S3-совместимое хранилище](#s3) | S3-совместимое хранилище | Нет | Аварийное восстановление, миграция, архивирование ||
|| [Инкрементальное резервное копирование](#incremental-backup) | В кластере ([экспортируются](https://ydb-platform--ydb.viewer.diplodoc.com/ru/concepts/datamodel/backup-collection.md#external-storage) в S3 или файловую систему) | Да | Регулярные бэкапы больших производственных БД ||
|#

## См. также

- [Коллекции резервных копий](https://ydb-platform--ydb.viewer.diplodoc.com/ru/concepts/datamodel/backup-collection.md) — архитектура и ограничения
- [Резервное копирование и восстановление](https://ydb-platform--ydb.viewer.diplodoc.com/ru/devops/backup-and-recovery/index.md) — практическое руководство
- [Справочник export/import](https://ydb-platform--ydb.viewer.diplodoc.com/ru/reference/ydb-cli/export-import/index.md) — команды CLI
- Справочник YQL:
  - [`CREATE BACKUP COLLECTION`](https://ydb-platform--ydb.viewer.diplodoc.com/ru/yql/reference/syntax/create-backup-collection.md)
  - [`BACKUP`](https://ydb-platform--ydb.viewer.diplodoc.com/ru/yql/reference/syntax/backup.md)
  - [`RESTORE`](https://ydb-platform--ydb.viewer.diplodoc.com/ru/yql/reference/syntax/restore-backup-collection.md)
  - [`DROP BACKUP COLLECTION`](https://ydb-platform--ydb.viewer.diplodoc.com/ru/yql/reference/syntax/drop-backup-collection.md)
