Configurar um banco de dados MySQL autogerenciado para CDC

Com o Datastream, é possível transmitir atualizações de captura de dados alterados (CDC) de um banco de dados MySQL autogerenciado para um destino compatível, como o BigQuery ou o Cloud Storage. Para preparar a origem, configure a geração de registros binários completa com base em linhas com um período de armazenamento de sete dias e crie um usuário do Datastream com privilégios de replicação. Também é possível usar essa configuração para bancos de dados compatíveis, como MariaDB, Percona Server para MySQL e Alibaba Cloud PolarDB.

Verifique a configuração e o período de armazenamento do registro binário

  1. Confirme se o registro binário está configurado corretamente digitando o seguinte comando do MySQL:

    SHOW GLOBAL VARIABLES LIKE '%binlog_format%';
    
  2. Verifique se o valor da variável binlog_format está definido como ROW. O Datastream não é compatível com os formatos de registro binário MIXED ou STATEMENT.

  3. Confirme se o formato de linha do registro binário está definido como FULL digitando o seguinte comando do MySQL:

    SHOW GLOBAL VARIABLES LIKE 'binlog_row_image';
    
  4. Para as versões 8.0 e mais recentes do MySQL, confirme se a variável binlog_row_value_options está definida como um valor vazio digitando o seguinte comando do MySQL:

    SHOW GLOBAL VARIABLES LIKE 'binlog_row_value_options';
    
  5. Verifique se a opção de atualizações de réplica do registro binário está definida como ON. Para isso, digite o seguinte comando do MySQL:

    SHOW GLOBAL VARIABLES LIKE 'log_replica_updates';
    

    Para versões do MySQL anteriores à 8.0.26, digite o seguinte comando:

    SHOW GLOBAL VARIABLES LIKE 'log_slave_updates';
    
  6. Verifique se o período de armazenamento do registro binário está definido como 604800 segundos (7 dias) digitando o seguinte comando do MySQL:

    SHOW GLOBAL VARIABLES LIKE 'binlog_expire_logs_seconds';
    

    Para versões do MySQL anteriores à 8.0.3, digite o seguinte comando:

    SHOW GLOBAL VARIABLES LIKE 'expire_logs_days';
    

Criar um usuário do Datastream

  1. Para criar um usuário do Datastream, insira os seguintes comandos do MySQL:

    CREATE USER 'datastream'@'%' IDENTIFIED BY 'YOUR_PASSWORD';
    GRANT REPLICATION SLAVE, SELECT, REPLICATION CLIENT ON *.* TO 'datastream'@'%';
    FLUSH PRIVILEGES;

A seguir