Antes de usar o conector MySQL Change Data Capture (CDC) para tabelas de origem, verifique se o armazenamento MySQL upstream atende aos requisitos de configuração, como versão, conexão de rede e permissões de conta. Também é necessário ativar o recurso de binary logging. Este tópico descreve os requisitos de configuração e as operações relacionadas para ApsaraDB RDS for MySQL, PolarDB for MySQL e bancos de dados MySQL autogerenciados.
Banco de dados ApsaraDB RDS for MySQL
Configurações de conexão de rede
Estabeleça a conexão de rede entre o ApsaraDB RDS for MySQL e o Flink totalmente gerenciado.
Se o ApsaraDB RDS for MySQL e o Flink totalmente gerenciado estiverem na mesma virtual private cloud (VPC) e na mesma região, eles já estarão conectados.
Caso o ApsaraDB RDS for MySQL e o Flink totalmente gerenciado estejam em redes diferentes, estabeleça uma conexão de rede entre eles. Por exemplo, use o VPN Gateway para criar essa conexão. Para mais informações, consulte Como um serviço Flink totalmente gerenciado acessa a Internet? e Como o Flink totalmente gerenciado acessa um serviço entre VPCs?
Configurações do servidor MySQL
Recurso de binary logging
Se o valor retornado for ON, o recurso está ativado.
Se o valor retornado for OFF, o recurso está desativado. Para saber como ativar o binary logging, consulte Visualize e exclua arquivos de log binário de uma instância ApsaraDB RDS for MySQL.
-
Formato dos logs binários
Os logs binários devem estar no formato ROW. Execute o comando show variables like "binlog_format" para consultar o formato dos logs binários. O formato padrão dos logs binários no ApsaraDB RDS for MySQL é ROW.
-
Definição do parâmetro binlog_row_image
O parâmetro binlog_row_image deve estar definido como FULL. Execute o comando show global variables like "binlog_row_image" para consultar o valor desse parâmetro. O valor padrão do binlog_row_image no ApsaraDB RDS for MySQL é FULL.
-
Desativar compressão de transações de log binário
Para recuperar dados incrementais com sucesso de um banco de dados MySQL autogerenciado usando o conector MySQL CDC, desative a compressão de transações de log binário.
O valor padrão do parâmetro scan.incremental.snapshot.enabled é true, o que indica que o recurso de snapshot incremental está ativado por padrão. Isso garante o funcionamento correto do ApsaraDB RDS for MySQL 5.6.X. Não é possível desativar o recurso de snapshot incremental no ApsaraDB RDS for MySQL 5.6.X. Essa limitação foi removida nas versões 6.0.8 e 8.0.1 do ApsaraDB RDS for MySQL, permitindo a desativação do recurso nessas versões. Recomendamos manter o snapshot incremental ativado, pois sua desativação causa bloqueio do banco de dados MySQL e pode afetar o desempenho do processamento de negócios online.
O recurso de binary logging deve estar ativado. Execute o comando show variables like "log_bin" para verificar se esse recurso está habilitado.
Configurações de parâmetros de sessão
interactive_timeout: define o número de segundos que o servidor aguarda por atividade antes de fechar uma conexão interativa. Para mais informações, consulte Configure o parâmetro interactive_timeout do MySQL.
wait_timeout: define o número de segundos que o servidor aguarda por atividade antes de fechar uma conexão não interativa. Para mais informações, consulte Configure o parâmetro wait_timeout do MySQL.
Ao usar o conector MySQL CDC para ler snapshots completos de um banco de dados grande, a conexão estabelecida pode atingir o tempo limite. Para evitar esse problema, configure os parâmetros interactive_timeout e wait_timeout no arquivo de configuração do MySQL. Descrição dos parâmetros:
Configurações de permissões de conta
Crie uma conta e conceda a ela as permissões SELECT, REPLICATION SLAVE e REPLICATION CLIENT. Essas permissões são obrigatórias para sincronizar dados do ApsaraDB RDS for MySQL por meio do conector MySQL CDC. Para mais informações, consulte Crie uma conta em uma instância ApsaraDB RDS for MySQL.
Banco de dados PolarDB for MySQL
Configurações de conexão de rede
Estabeleça a conexão de rede entre o PolarDB for MySQL e o Flink totalmente gerenciado.
Se o PolarDB for MySQL e o Flink totalmente gerenciado estiverem na mesma VPC e na mesma região, eles já estarão conectados.
Caso o PolarDB for MySQL e o Flink totalmente gerenciado estejam em redes diferentes, estabeleça uma conexão de rede entre eles. Por exemplo, use o VPN Gateway para criar essa conexão. Para mais informações, consulte Como um serviço Flink totalmente gerenciado acessa a Internet? e Como o Flink totalmente gerenciado acessa um serviço entre VPCs?
Configurações do servidor MySQL
Recurso de binary logging
Se o valor retornado for ON, o recurso está ativado.
Se o valor retornado for OFF, o recurso está desativado. Para saber como ativar o binary logging, consulte Ative binary logging.
-
Formato dos logs binários
Os logs binários devem estar no formato ROW. Execute o comando show variables like "binlog_format" para consultar o formato dos logs binários. O formato padrão dos logs binários no PolarDB for MySQL é ROW.
-
Definição do parâmetro binlog_row_image
O parâmetro binlog_row_image deve estar definido como FULL. Execute o comando show global variables like "binlog_row_image" para consultar o valor desse parâmetro. O valor padrão do binlog_row_image no PolarDB for MySQL é FULL.
O recurso de binary logging deve estar ativado. Execute o comando show variables like "log_bin" para verificar se esse recurso está habilitado.
Configurações de parâmetros de sessão
interactive_timeout: define o número de segundos que o servidor aguarda por atividade antes de fechar uma conexão interativa. Para mais informações, consulte Especifique parâmetros de cluster e nó.
wait_timeout: define o número de segundos que o servidor aguarda por atividade antes de fechar uma conexão não interativa. Para mais informações, consulte Especifique parâmetros de cluster e nó.
Ao usar o conector MySQL CDC para ler snapshots completos de um banco de dados grande, a conexão estabelecida pode atingir o tempo limite. Para evitar esse problema, configure os parâmetros interactive_timeout e wait_timeout no arquivo de configuração do MySQL. Descrição dos parâmetros:
Configurações de permissões de conta
Crie uma conta e conceda a ela as permissões SELECT, REPLICATION SLAVE e REPLICATION CLIENT. Essas permissões são obrigatórias para sincronizar dados do PolarDB for MySQL por meio do conector MySQL CDC. Para saber como criar uma conta e conceder permissões, consulte Crie uma conta de banco de dados.
Por padrão, uma conta criada no console do PolarDB for MySQL não possui a permissão SELECT. Conceda manualmente a permissão SELECT à conta. Para mais informações sobre como conceder permissões a uma conta, consulte Gerencie permissões de usuário em bancos de dados MySQL.
Banco de dados MySQL autogerenciado
Configurações de conexão de rede
Estabeleça a conexão de rede entre o banco de dados MySQL autogerenciado e o Flink totalmente gerenciado.
Se o seu banco de dados MySQL estiver implantado na Alibaba Cloud e residir na mesma VPC que o Flink totalmente gerenciado, eles já estarão conectados.
Se o seu banco de dados MySQL não estiver implantado na Alibaba Cloud, habilite o acesso do Flink totalmente gerenciado ao endereço IP público do banco de dados MySQL. Nesse caso, conecte o banco de dados MySQL autogerenciado ao Flink totalmente gerenciado usando o VPN Gateway. Para mais informações, consulte Como um serviço Flink totalmente gerenciado acessa a Internet?
Configurações do servidor MySQL
-
Versões suportadas
O conector MySQL CDC executado no Ververica Runtime (VVR) 4.0.8 ou posterior lê dados de bancos de dados MySQL nas versões 5,7 e 8.0.X. Já o conector MySQL CDC no VVR 4.0.11 ou posterior lê dados das versões 5.6.X, 5,7.X e 8.0.X. Execute o comando select version() para consultar a versão do MySQL.
Recurso de binary logging
Se o valor retornado for ON, o recurso está ativado.
Se o valor retornado for OFF, o recurso está desativado. Para saber como ativar o binary logging, consulte Ative binary logging.
-
Formato dos logs binários
Os logs binários devem estar no formato ROW. Execute o comando show variables like "binlog_format" para consultar o formato dos logs binários. Caso os logs binários não estejam no formato ROW, altere o formato para ROW. Para mais informações, consulte Configure o formato de log binário.
-
Definição do parâmetro binlog_row_image
O parâmetro binlog_row_image deve estar definido como FULL. Execute o comando show global variables like "binlog_row_image" para consultar o valor desse parâmetro. Se o valor do binlog_row_image não for FULL, altere-o para FULL. Para mais informações, consulte Definição de binlog_row_image.
-
Desativar compressão de transações de log binário
Para recuperar dados incrementais com sucesso de um banco de dados MySQL autogerenciado usando o conector MySQL CDC, desative a compressão de transações de log binário.
O recurso de binary logging deve estar ativado. Execute o comando show variables like "log_bin" para verificar se esse recurso está habilitado.
Configurações de parâmetros de sessão
interactive_timeout: define o número de segundos que o servidor aguarda por atividade antes de fechar uma conexão interativa. Para mais informações, consulte Configure o parâmetro interactive_timeout do MySQL.
wait_timeout: define o número de segundos que o servidor aguarda por atividade antes de fechar uma conexão não interativa. Para mais informações, consulte Configure o parâmetro wait_timeout do MySQL.
Ao usar o conector MySQL CDC para ler dados completos de um banco de dados grande, a conexão estabelecida pode atingir o tempo limite. Para evitar esse problema, configure os parâmetros interactive_timeout e wait_timeout no arquivo de configuração do MySQL. Descrição dos parâmetros:
Configurações de permissões de conta
Crie uma conta e configure uma senha para ela.
Para mais informações, consulte Crie um usuário.
Conceda as permissões necessárias à conta.
. indica que a conta recebe as permissões acima em todas as tabelas de todos os bancos de dados. Também é possível usar mydb.* para permitir que a conta especificada receba essas permissões em um único banco de dados.
Certifique-se de que as permissões concedidas à conta sejam válidas.
Crie uma conta e conceda a ela as permissões SELECT, REPLICATION SLAVE e REPLICATION CLIENT. Para configurar as permissões da conta, execute as etapas a seguir:
CREATE USER 'user'@'localhost' IDENTIFIED BY 'password';
GRANT SELECT, REPLICATION SLAVE,REPLICATION CLIENT ON *.* TO 'user' IDENTIFIED BY 'password';
FLUSH PRIVILEGES;