> ## Documentation Index
> Fetch the complete documentation index at: https://private-7c7dfe99-home-button.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Поддержка распространения изменений схемы

> Страница с описанием типов изменений схемы, которые ClickPipes может обнаруживать в исходных таблицах

ClickPipes для MySQL может обнаруживать изменения схемы в исходных таблицах и в некоторых случаях автоматически применять эти изменения к целевым таблицам. Ниже описано, как обрабатывается каждая DDL-операция:

[//]: # "TODO Дополнить эту страницу описанием поведения для rename, изменений типов данных и truncate, а также рекомендациями по обработке несовместимых изменений схемы."

| Тип изменения схемы                                                                            | Поведение                                                                                                                                                                                                    |
| ---------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| Добавление нового столбца (`ALTER TABLE ADD COLUMN ...`)                                       | Применяется автоматически. Новые столбцы будут заполняться для всех строк, реплицированных после изменения схемы                                                                                             |
| Добавление нового столбца со значением по умолчанию (`ALTER TABLE ADD COLUMN ... DEFAULT ...`) | Применяется автоматически. Новые столбцы будут заполняться для всех строк, реплицированных после изменения схемы, но в существующих строках значение по умолчанию не появится без полного обновления таблицы |
| Удаление существующего столбца (`ALTER TABLE DROP COLUMN ...`)                                 | Обнаруживается, но **не** применяется. Для всех строк, реплицированных после изменения схемы, в удалённых столбцах будет значение `NULL`                                                                     |

<Note>
  Добавление столбцов при создании снимка в настоящее время не поддерживается. Рекомендуемый обходной путь — выполнять снимки до или после запланированных изменений схемы либо, если ClickPipe уже завершается с ошибкой, вручную добавить в целевую таблицу столбец подходящего типа.
</Note>

<div id="mysql-5-limitations">
  ### Ограничения MySQL 5.x
</div>

Версии MySQL ниже [8.0.1](https://dev.mysql.com/blog-archive/more-metadata-is-written-into-binary-log/) не включают полные метаданные столбцов в binlog (`binlog_row_metadata=FULL`), поэтому ClickPipes отслеживает столбцы по их порядковым позициям. Это означает следующее:

* **Добавление столбца в конец** (`ALTER TABLE ADD COLUMN ...`) поддерживается.
* **Любая DDL-операция, меняющая позиции столбцов**, приведёт к ошибке в пайпе, поскольку порядковые позиции больше нельзя надёжно сопоставить. Сюда относятся:
  * `ALTER TABLE DROP COLUMN ...`
  * `ALTER TABLE ADD COLUMN ... AFTER ...` / `FIRST`
  * `ALTER TABLE MODIFY COLUMN ... AFTER ...` / `FIRST`
  * `ALTER TABLE CHANGE COLUMN ... AFTER ...` / `FIRST`

Если вы столкнулись с этой ошибкой, потребуется повторно синхронизировать пайп.
