Ative a retenção dos logs binários
Os logs binários contêm informações sobre modificações de dados feitas em uma instância do servidor MySQL e são necessários para a replicação.
MySQL 8.x e versões mais recentes
Para ativar o log binário na sua instância do MySQL, verifique se as seguintes configurações estão definidas:
log_bin = ON -- valor padrão
binlog_format = ROW -- valor padrão
binlog_row_image = FULL -- valor padrão
binlog_row_metadata = FULL
binlog_expire_logs_seconds = 86400 -- 1 dia ou mais; o padrão é 30 diasPara verificar essas configurações, execute os seguintes comandos SQL:
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 'binlog_expire_logs_seconds';Se os valores não corresponderem, você pode executar os seguintes comandos SQL para ajustá-los:
SET PERSIST log_bin = ON;
SET PERSIST binlog_format = ROW;
SET PERSIST binlog_row_image = FULL;
SET PERSIST binlog_row_metadata = FULL;
SET PERSIST binlog_expire_logs_seconds = 86400;Se você alterou a configuração log_bin, PRECISA REINICIAR a instância do MySQL para que as alterações entrem em vigor.
Depois de alterar as configurações, prossiga para configurar um usuário do banco de dados.
MySQL 5.7
Para ativar o log binário na sua instância do MySQL 5.7, certifique-se de que as seguintes configurações estejam definidas:
server_id = 1 -- ou maior; qualquer valor exceto 0
log_bin = ON
binlog_format = ROW -- valor padrão
binlog_row_image = FULL -- valor padrão
expire_logs_days = 1 -- ou maior; 0 significa que os logs serão preservados indefinidamentePara verificar essas configurações, execute os seguintes comandos 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 'expire_logs_days';Se os valores não coincidirem, você pode defini-los no arquivo de configuração (geralmente em /etc/my.cnf ou /etc/mysql/my.cnf):
[mysqld]
server_id = 1
log_bin = ON
binlog_format = ROW
binlog_row_image = FULL
expire_logs_days = 1Você PRECISA REINICIAR a instância do MySQL para que as alterações passem a valer.
Configure um usuário do banco de dados
Conecte-se à sua instância do MySQL como usuário root e execute os comandos a seguir:
-
Crie um usuário dedicado para o ClickPipes:
CREATE USER 'clickpipes_user'@'%' IDENTIFIED BY 'some_secure_password'; -
Conceda permissões no esquema. O exemplo a seguir mostra as permissões para o banco de dados
clickpipes. Repita esses comandos para cada banco de dados e host que você deseja replicar:GRANT SELECT ON `clickpipes`.* TO 'clickpipes_user'@'%'; -
Conceda permissões de replicação ao usuário:
GRANT REPLICATION CLIENT ON *.* TO 'clickpipes_user'@'%'; GRANT REPLICATION SLAVE ON *.* TO 'clickpipes_user'@'%';
Configuração de SSL/TLS (recomendada)
Os certificados SSL garantem conexões seguras com seu banco de dados MySQL. A configuração depende do tipo de certificado:
Autoridade Certificadora confiável (DigiCert, Let's Encrypt etc.) - não é necessária nenhuma configuração adicional.
Autoridade Certificadora interna - Obtenha o arquivo do certificado raiz da CA com sua equipe de TI. Na UI do ClickPipes, faça upload dele ao criar um novo MySQL ClickPipe.
MySQL self-hosted - Copie o certificado da CA do seu servidor MySQL (normalmente em /var/lib/mysql/ca.pem) e faça upload dele na UI ao criar um novo MySQL ClickPipe. Use o endereço IP do servidor como host.
MySQL self-hosted sem acesso ao servidor - Entre em contato com sua equipe de TI para obter o certificado. Como último recurso, use a opção "Ignorar verificação do certificado" na UI do ClickPipes (não recomendado por motivos de segurança).
Para mais informações sobre as opções de SSL/TLS, consulte nosso FAQ.
Próximos passos
Agora você pode criar seu ClickPipe e começar a ingerir dados da sua instância do MySQL para o ClickHouse Cloud. Anote os dados de conexão usados ao configurar sua instância do MySQL, pois você precisará deles durante o processo de criação do ClickPipe.