Перейти к основному содержанию

Поддерживает ли MySQL ClickPipe MariaDB?

Да, MySQL ClickPipe поддерживает MariaDB 10.0 и выше. Его конфигурация очень похожа на конфигурацию MySQL, при этом по умолчанию используется GTID-репликация.

Поддерживает ли MySQL ClickPipe PlanetScale, Vitess или TiDB?

Нет, они не поддерживают binlog API MySQL.

Как управляется репликация?

Мы поддерживаем репликацию как через GTID, так и через FilePos. В отличие от Postgres, здесь нет слота для управления смещением. Вместо этого нужно настроить сервер MySQL с достаточным периодом хранения binlog. Если наше смещение в binlog станет недействительным (например, если mirror был слишком долго приостановлен или при использовании репликации FilePos произошло аварийное переключение базы данных), вам потребуется повторно синхронизировать пайп. Обязательно оптимизируйте materialized view, зависящие от целевых таблиц, поскольку неэффективные запросы могут замедлить ингестию так, что она начнёт отставать и выйдет за пределы периода хранения. Также возможно, что неактивная база данных выполнит ротацию файла журнала, не давая ClickPipes перейти к более новому смещению. В этом случае может потребоваться настроить таблицу heartbeat с регулярными обновлениями по расписанию. В начале начальной загрузки мы фиксируем смещение binlog, с которого нужно начинать. Это смещение должно оставаться действительным к моменту завершения начальной загрузки, чтобы CDC (фиксация изменений данных) мог продолжиться. Если вы выполняете приём большого объёма данных, обязательно настройте подходящий период хранения binlog. При настройке таблиц вы можете ускорить начальную загрузку, включив параметр Use a custom partitioning key for initial load для больших таблиц в расширенных настройках, чтобы мы могли загружать одну таблицу параллельно.

Почему при подключении к MySQL возникает ошибка проверки TLS-сертификата?

При подключении к MySQL вы можете столкнуться с ошибками сертификата, такими как x509: certificate is not valid for any names или x509: certificate signed by unknown authority. Это происходит потому, что ClickPipes по умолчанию использует шифрование TLS. У вас есть несколько способов решить эти проблемы:
  1. Укажите поле TLS Host — если имя хоста в вашем подключении не совпадает с именем в сертификате (это часто бывает при использовании AWS PrivateLink через Endpoint Service). Установите значение “TLS Host (optional)” так, чтобы оно совпадало с Common Name (CN) или Subject Alternative Name (SAN) сертификата.
  2. Загрузите свой корневой CA — для серверов MySQL, использующих внутренние центры сертификации, или Google Cloud SQL со стандартной конфигурацией CA на instance. Подробнее о том, как получить доступ к сертификатам Google Cloud SQL, см. в этом разделе.
  3. Настройте сертификат сервера — обновите SSL-сертификат сервера так, чтобы он включал все имена хостов, используемые для подключения, и был подписан доверенным центром сертификации.
  4. Отключите проверку сертификата — для самоуправляемого MySQL или MariaDB, в конфигурации по умолчанию которых создаётся самоподписанный сертификат, который мы не можем проверить (MySQL, MariaDB). Использование такого сертификата шифрует данные при передаче, но создаёт риск подмены сервера. Для промышленных сред мы рекомендуем использовать корректно подписанные сертификаты, однако этот вариант удобен для разового тестирования или при подключении к устаревшей инфраструктуре.

Поддерживаются ли изменения схемы?

Подробнее см. на странице ClickPipes for MySQL: Поддержка передачи изменений схемы.

Поддерживается ли репликация каскадных удалений по внешним ключам MySQL ON DELETE CASCADE?

Из-за особенностей обработки каскадных удалений в MySQL они не записываются в binlog. Поэтому ClickPipes (как и любой инструмент CDC (фиксация изменений данных)) не может их реплицировать. Это может привести к несогласованности данных. Для поддержки каскадных удалений рекомендуется использовать триггеры.

Почему я не могу реплицировать таблицу, если в её имени есть точка?

В PeerDB пока есть ограничение: если в идентификаторе исходной таблицы — то есть в имени схемы или имени таблицы — есть точки, репликация не поддерживается. Это связано с тем, что PeerDB разделяет идентификатор по точке и в таком случае не может понять, где схема, а где таблица. Сейчас ведётся работа над тем, чтобы поддержать отдельный ввод схемы и таблицы и тем самым обойти это ограничение.

Можно ли включить столбцы, которые я изначально исключил из репликации?

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