SYSTEM ATLASЗагрузка материала

Изменение схемы без остановки

Online Schema Change

Online schema change меняет структуру таблицы при продолжающемся чтении и записи с контролируемыми блокировками.

Простыми словами

Например, команда добавляет индекс к таблице заказов без многочасовой недоступности API и следит за replication lag. Поэтому заранее определяют правила чтения, записи и восстановления - иначе параллельные операции могут оставить данные в состоянии, которого бизнес не ожидал.

Пример от @Vibeclakr

Пример при разработке

Команда добавляет индекс к таблице заказов без многочасовой недоступности API и следит за replication lag.

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

Формальное определение

Online schema change меняет структуру таблицы при продолжающемся чтении и записи с контролируемыми блокировками.

Механизм действия

Движок использует online DDL или теневую таблицу, переносит данные, синхронизирует изменения и выполняет короткое переключение.

Пример в работе

Нерабочий подход

Внедрить «Изменение схемы без остановки» как формальную настройку, не проверив сценарий отказа и ограничение: Операция всё равно потребляет CPU, IO и журнал; некоторые изменения требуют блокировки или полной копии.

Системный подход

Применять «Изменение схемы без остановки» только для заявленной цели, проверять поведение на реальном контуре и сохранять наблюдаемый критерий результата.

Ограничения

Операция всё равно потребляет CPU, IO и журнал; некоторые изменения требуют блокировки или полной копии.

Источник

Oracle / MySQL Documentation, “MySQL Reference Manual: Online DDL Operations”, 2026.

Первоисточник