| Тип изменения схемы | Поведение |
|---|---|
Добавление нового столбца (ALTER TABLE ADD COLUMN ...) | Применяется автоматически. Новые столбцы будут заполняться для всех строк, реплицированных после изменения схемы |
Добавление нового столбца со значением по умолчанию (ALTER TABLE ADD COLUMN ... DEFAULT ...) | Применяется автоматически. Новые столбцы будут заполняться для всех строк, реплицированных после изменения схемы, но в существующих строках значение по умолчанию не появится без полного обновления таблицы |
Удаление существующего столбца (ALTER TABLE DROP COLUMN ...) | Обнаруживается, но не применяется. Для всех строк, реплицированных после изменения схемы, в удалённых столбцах будет значение NULL |
Добавление столбцов при создании снимка в настоящее время не поддерживается. Рекомендуемый обходной путь — выполнять снимки до или после запланированных изменений схемы либо, если ClickPipe уже завершается с ошибкой, вручную добавить в целевую таблицу столбец подходящего типа.
Ограничения MySQL 5.x
binlog_row_metadata=FULL), поэтому ClickPipes отслеживает столбцы по их порядковым позициям. Это означает следующее:
- Добавление столбца в конец (
ALTER TABLE ADD COLUMN ...) поддерживается. - Любая DDL-операция, меняющая позиции столбцов, приведёт к ошибке в пайпе, поскольку порядковые позиции больше нельзя надёжно сопоставить. Сюда относятся:
ALTER TABLE DROP COLUMN ...ALTER TABLE ADD COLUMN ... AFTER .../FIRSTALTER TABLE MODIFY COLUMN ... AFTER .../FIRSTALTER TABLE CHANGE COLUMN ... AFTER .../FIRST