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

REPAIR TABLE

Описание​

Оператор REPAIR TABLE используется для приоритетного восстановления реплик указанной таблицы или партиции. Этот оператор предоставляет следующие возможности:

  • Восстановление всех реплик таблицы.
  • Восстановление реплик указанных партиций.
  • Восстановление реплик с высоким приоритетом.
  • Настройка времени ожидания восстановления.

Синтаксис​

ADMIN REPAIR TABLE <table_name> [ PARTITION (<partition_name> [, ...]) ];

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

1. <table_name>

Указывает имя таблицы, реплики которой необходимо восстановить.

Имя таблицы должно быть уникальным в пределах базы данных.

Необязательные параметры​

1. PARTITION (<partition_name> [, ...])

Указывает список имён партиций, реплики которых необходимо восстановить.

Если этот параметр не указан, будут восстановлены реплики всех партиций таблицы.

Требования к правам доступа​

Пользователи, выполняющие эту команду SQL, должны иметь как минимум следующие права:

ПривилегияОбъектПримечания
ADMINСистемаДля выполнения этой команды пользователь должен иметь привилегию ADMIN.

Примечания по использованию​

  • Этот оператор указывает системе попытаться восстановить указанные реплики с высоким приоритетом, но не гарантирует успешного восстановления.
  • Время ожидания по умолчанию составляет 14,400 секунд (4 часа).
  • По истечении времени ожидания система перестаёт отдавать приоритет восстановлению указанных реплик.
  • Если время ожидания восстановления истекло, для продолжения процесса восстановления необходимо выполнить команду повторно.
  • Ход восстановления можно отслеживать с помощью команды SHOW REPLICA STATUS.
  • Эта команда не влияет на обычный механизм восстановления реплик в системе; она лишь повышает приоритет восстановления для указанной таблицы или партиции.

Примеры​

  • Восстановить все реплики таблицы:

    ADMIN REPAIR TABLE tbl1;
  • Восстановить реплики указанных партиций:

    ADMIN REPAIR TABLE tbl1 PARTITION (p1, p2);
  • Проверить ход восстановления:

    SHOW REPLICA STATUS FROM tbl1;