Spec-Zone.ru › MySQL 5.7

14.13.5 Условия сбоя онлайн DDL-операций

Сбой операции онлайн DDL обычно обусловлен одним из следующих условий:

  • Заданный в ключе ALGORITHM алгоритм несовместим с конкретным типом операции DDL или движком хранилища.

  • Заданный в ключе LOCK уровень блокировки (SHARED или NONE) несовместим с конкретным типом операции DDL.

  • Происходит таймаут ожидания операции над таблицей, которая может потребоваться в начальной и конечной фазах операции DDL.

  • В файловой системе tmpdir или innodb_tmpdir закончилось место на диске во время записи MySQL временных файлов сортировки при создании индекса. Дополнительную информацию см. в разделе 14.13.3, «Требования к дисковому пространству для онлайн DDL».

  • Операция занимает много времени, и одновременные операции DML изменяют таблицу настолько, что размер временного онлайн-журнала превышает значение параметра конфигурации innodb_online_alter_log_max_size. Это приводит к ошибке DB_ONLINE_LOG_TOO_BIG.

  • Одновременные операции DML вносят изменения в таблицу, разрешенные с исходным определением таблицы, но не с новым. Операция завершается только в конце, когда MySQL пытается применить все изменения от одновременных операций DML. Например, вы можете вставить дублированные значения в столбец, пока создается уникальный индекс, или вставить NULL значения в столбец во время создания индекса по этому столбцу. Изменения, внесённые одновременными операциями DML, имеют приоритет, и операция ALTER TABLE фактически прерывается.

© 2025 Oracle
Licensed under the GPLv2 License.
https://docs.oracle.com/cd/E17952_01/mysql-5.7-en/innodb-online-ddl-failure-conditions.html

Spec-Zone.ru

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