Skip to content
ClickHouse Docs
ClickHouse DocsClickHouse Docs

Настройки восстановления

Запрос RESTORE поддерживает настройки в предложении SETTINGS, которые определяют, какие категории объектов считываются из резервной копии. На этой странице описаны настройки, позволяющие выбрать восстанавливаемые данные таблиц, объекты управления доступом и пользовательские функции.

structure_only

Тип: Bool. Значение по умолчанию: false.

Если задано значение true, из резервной копии считываются только запросы CREATE, без содержимого восстанавливаемых объектов. Это удобное сокращение, задающее фактические значения по умолчанию false для всех трёх настроек категорий ниже:

  • restore_table_data
  • restore_access_entities
  • restore_functions

restore_table_data

Тип: Bool. Необязательный; если не задан, по умолчанию равен !structure_only (то есть true, если structure_only не задан).

Определяет, следует ли восстанавливать данные таблиц. При явном задании переопределяет structure_only: установите true, чтобы восстановить данные таблиц даже при structure_only=true, или false, чтобы пропустить данные таблиц, даже если structure_only не задан.

restore_access_entities

Тип: Bool. Необязательный параметр; по умолчанию имеет значение !structure_only.

Определяет, следует ли восстанавливать объекты управления доступом: пользователей, роли, профили настроек, политики строк и квоты. При явном задании переопределяет structure_only.

restore_functions

Тип: Bool. Необязательный; если не задан, по умолчанию равно !structure_only.

Определяет, следует ли восстанавливать пользовательские функции. При явном задании переопределяет structure_only.

Фактическое поведение

Каждая категория восстанавливается, если соответствующая ей настройка имеет значение true. Если настройка категории не указана, её значение определяется параметром structure_only: по умолчанию все три настройки имеют значение true, а при structure_only=truefalse.

structure_only restore_* не задано restore_* = true restore_* = false
false восстановлено восстановлено пропущено
true пропущено восстановлено пропущено

Это полностью обратно совместимо: запрос RESTORE, в котором не задана ни одна из новых настроек, ведёт себя точно так же, как и раньше.

Примеры

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

RESTORE ALL FROM backup_name
SETTINGS structure_only = true, restore_access_entities = true

Восстановить только данные таблицы без повторного создания объектов управления доступом или пользовательских функций:

RESTORE ALL FROM backup_name
SETTINGS structure_only = true, restore_table_data = true

Восстановить всё, кроме пользовательских функций:

RESTORE ALL FROM backup_name
SETTINGS restore_functions = false
Navigation