Spec-Zone.ru › MySQL 8.4

7.6.7.9 Обработка ошибок при удалённом клонировании

В этом разделе описывается обработка ошибок на различных этапах операции клонирования.

  1. Проверяются предварительные условия (см. Предварительные условия для удаленного клонирования).

    • Если при проверке предварительных условий произошла ошибка, операция CLONE INSTANCE сообщает об ошибке.

  2. Конкурентные DDL-операции на доноре блокируются только в том случае, если переменная clone_block_ddl установлена в значение ON (значение по умолчанию — OFF). См. Раздел 7.6.7.4, «Клонирование и конкурентные DDL».

    Если операция клонирования не может получить блокировку DDL в течение времени, указанного в переменной clone_ddl_timeout, то сообщается об ошибке.

  3. Пользовательские данные (схемы, таблицы, табличные пространства) и двоичные логи на получателе удаляются перед клонированием данных в каталог данных получателя.

    Когда пользовательские данные и двоичные логи удаляются из каталога данных получателя во время операции удаленного клонирования, данные не сохраняются и могут быть потеряны в случае возникновения ошибки. Если данные важны, перед запуском операции удаленного клонирования следует создать их резервную копию.

    Для информационных целей в журнал ошибок сервера выводятся сообщения, указывающие, когда начинается и завершается удаление данных:

    [Warning] [MY-013453] [InnoDB] Clone removing all user data for provisioning:
    Started...
    
    [Warning] [MY-013453] [InnoDB] Clone removing all user data for provisioning:
    Finished
    

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

  4. Данные клонируются с донора. Клонируются пользовательские данные, метаданные словаря и другие системные данные.

    Если при клонировании данных произошла ошибка, операция клонирования откатывается, и все клонированные данные удаляются. На этом этапе ранее существовавшие пользовательские данные и двоичные логи на получателе также были удалены.

    В этом случае вы можете устранить причину ошибки и повторно выполнить операцию клонирования или отказаться от операции клонирования и восстановить данные получателя из резервной копии, созданной до начала операции клонирования.

  5. Сервер автоматически перезапускается (применяется к операциям удаленного клонирования, которые не клонируют в именованный каталог). Во время запуска выполняются стандартные задачи запуска сервера.

    Если автоматический перезапуск сервера завершается ошибкой, вы можете перезапустить сервер вручную, чтобы завершить операцию клонирования.

Если во время операции клонирования произошла сетевая ошибка, операция возобновляется, если ошибка разрешена в течение времени, указанного в переменной clone_donor_timeout_after_network_failure на экземпляре донора. Значение по умолчанию для clone_donor_timeout_after_network_failure — 5 минут, но поддерживается диапазон от 0 до 30 минут. Если операция не возобновится в отведенное время, она прерывается и возвращает ошибку, а донор удаляет снимок. Установка значения 0 заставляет донор немедленно удалить снимок при возникновении сетевой ошибки. Настройка более длительного таймаута позволяет больше времени для решения сетевых проблем, но также увеличивает размер дельты на экземпляре донора, что увеличивает время восстановления клонирования, а также задержку репликации в случаях, когда клон предназначен для роли реплики или члена группы репликации.

Таймаут бездействия клонирования установлен по умолчанию в wait_timeout, который составляет 28800 секунд (8 часов).

© 2025 Oracle
Licensed under the GPLv2 License.
https://docs.oracle.com/cd/E17952_01/mysql-8.4-en/clone-plugin-failure-handling.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API