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

Общая инструкция по настройке источника MariaDB

Справочные материалы

Если вы используете одного из поддерживаемых провайдеров (см. список в боковой панели), обратитесь к отдельной инструкции для этого провайдера.

Включение хранения бинарных логов

Бинарные логи содержат информацию об изменениях данных, внесённых в экземпляр сервера MariaDB, и необходимы для репликации.

Чтобы включить бинарное логирование на вашем экземпляре сервера MariaDB, убедитесь, что настроены следующие параметры:

server_id = 1               -- или больше; любое значение, кроме 0
log_bin = ON
binlog_format = ROW
binlog_row_image = FULL
binlog_row_metadata = FULL  -- добавлен в версии 10.5.0
expire_logs_days = 1        -- или больше; 0 означает, что журналы хранятся бессрочно

Чтобы проверить эти настройки, выполните следующие SQL-запросы:

SHOW VARIABLES LIKE 'server_id';
SHOW VARIABLES LIKE 'log_bin';
SHOW VARIABLES LIKE 'binlog_format';
SHOW VARIABLES LIKE 'binlog_row_image';
SHOW VARIABLES LIKE 'binlog_row_metadata';
SHOW VARIABLES LIKE 'expire_logs_days';

Если значения отличаются, вы можете задать их в конфигурационном файле (обычно по пути /etc/my.cnf или /etc/my.cnf.d/mariadb-server.cnf):

[mysqld]
server_id = 1
log_bin = ON
binlog_format = ROW
binlog_row_image = FULL
binlog_row_metadata = FULL  ; только в версиях 10.5.0 и новее
expire_logs_days = 1

Если исходная база данных является репликой, убедитесь, что параметр log_slave_updates также включён.

Вам НЕОБХОДИМО ПЕРЕЗАПУСТИТЬ экземпляр MariaDB, чтобы изменения вступили в силу.

Примечание

Исключение столбцов не поддерживается для MariaDB <= 10.4, так как настройка binlog_row_metadata ещё не была введена.

Настройка пользователя базы данных

Подключитесь к экземпляру MariaDB под пользователем root и выполните следующие команды:

  1. Создайте отдельного пользователя для ClickPipes:

    CREATE USER 'clickpipes_user'@'%' IDENTIFIED BY 'some_secure_password';
    
  2. Предоставьте права на схему. В следующем примере показаны права для базы данных clickpipes. Повторите эти команды для каждой базы данных и каждого хоста, которые вы хотите реплицировать:

    GRANT SELECT ON `clickpipes`.* TO 'clickpipes_user'@'%';
    
  3. Предоставьте пользователю права на репликацию:

    GRANT REPLICATION CLIENT ON *.* TO 'clickpipes_user'@'%';
    GRANT REPLICATION SLAVE ON *.* TO 'clickpipes_user'@'%';
    
Примечание

Обязательно замените clickpipes_user и some_secure_password на нужные имя пользователя и пароль.

Конфигурация SSL/TLS (рекомендуется)

Сертификаты SSL обеспечивают защищённые соединения с вашей базой данных MariaDB. Конфигурация зависит от типа сертификата:

Доверенный центр сертификации (DigiCert, Let's Encrypt и т. д.) — дополнительная настройка не требуется.

Внутренний центр сертификации — получите файл корневого сертификата CA у вашей ИТ-команды. В интерфейсе ClickPipes загрузите его при создании нового MariaDB ClickPipe.

Самостоятельно развёрнутая MariaDB — скопируйте сертификат CA с вашего сервера MariaDB (найдите путь по настройке ssl_ca в вашем my.cnf). В интерфейсе ClickPipes загрузите его при создании нового MariaDB ClickPipe. Используйте IP-адрес сервера в качестве хоста.

Самостоятельно развёрнутая MariaDB, начиная с версии 11.4 — если на вашем сервере настроен ssl_ca, следуйте варианту выше. В противном случае проконсультируйтесь с вашей ИТ-командой для выдачи корректного сертификата. В крайнем случае используйте переключатель «Skip Certificate Verification» в интерфейсе ClickPipes (не рекомендуется по соображениям безопасности).

Для получения дополнительной информации по вариантам настройки SSL/TLS см. наш FAQ.

Что дальше?

Теперь вы можете создать ClickPipe и начать приём данных из вашего экземпляра MariaDB в ClickHouse Cloud. Обязательно запишите параметры подключения, которые вы использовали при настройке экземпляра MariaDB, так как они понадобятся при создании ClickPipe.