> ## Documentation Index
> Fetch the complete documentation index at: https://clickhouse.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

> Guia passo a passo para configurar o Amazon Aurora MySQL como origem no ClickPipes

# Guia de configuração da origem Aurora MySQL

export const Image = ({img, alt, size = "lg"}) => {
  const normalizedSize = ["sm", "md", "lg"].includes(size) ? size : "lg";
  return <div className={`ch-image-${normalizedSize}`}>
      <Frame>
        <img src={img} alt={alt} />
      </Frame>
    </div>;
};

Este guia passo a passo mostra como configurar o Amazon Aurora MySQL para replicar dados para o ClickHouse Cloud usando o [ClickPipe do MySQL](/docs/pt-BR/integrations/clickpipes/mysql/index). Para perguntas frequentes sobre CDC do MySQL, consulte a [página de perguntas frequentes do MySQL](/docs/pt-BR/integrations/clickpipes/mysql/faq).

<div id="enable-binlog-retention-aurora">
  ## Habilite a retenção do log binário
</div>

O log binário é um conjunto de arquivos de log que contém informações sobre modificações de dados feitas em uma instância de servidor MySQL, e os arquivos de log binário são necessários para a replicação. Para configurar a retenção do log binário no Aurora MySQL, você deve [habilitar o log binário](#enable-binlog-logging) e [aumentar o intervalo de retenção do binlog](#binlog-retention-interval).

<Steps>
  <Step title="Habilite o log binário por meio do backup automatizado" id="enable-binlog-logging">
    O recurso de backups automatizados determina se o log binário está ativado ou desativado no MySQL. Os backups automatizados podem ser configurados para sua instância no RDS Console navegando até **Modify** > **Additional configuration** > **Backup** e marcando a caixa de seleção **Enable automated backups** (se ainda não estiver marcada).

    <Image img="https://mintcdn.com/private-7c7dfe99/Rm4A9_kDxZf0ApeE/images/integrations/data-ingestion/clickpipes/mysql/source/rds/rds-backups.webp?fit=max&auto=format&n=Rm4A9_kDxZf0ApeE&q=85&s=21ca5d0f6d6dfda1a398b336782fb229" alt="Habilitando backups automatizados no Aurora" size="lg" border width="3230" height="530" data-path="images/integrations/data-ingestion/clickpipes/mysql/source/rds/rds-backups.webp" />

    Recomendamos definir o **Backup retention period** como um valor razoavelmente longo, dependendo do caso de uso da replicação.
  </Step>

  <Step title="Aumente o intervalo de retenção do binlog" id="binlog-retention-interval">
    <Warning>
      Se o ClickPipes tentar retomar a replicação e os arquivos de log binário necessários tiverem sido removidos devido ao valor de retenção de binlog configurado, o ClickPipe entrará em estado de erro, e será necessário fazer uma ressincronização.
    </Warning>

    Por padrão, o Aurora MySQL remove o log binário o mais rápido possível (ou seja, *lazy purging*). Recomendamos aumentar o intervalo de retenção do binlog para pelo menos **72 horas**, para garantir a disponibilidade dos arquivos de log binário para replicação em cenários de falha. Para definir um intervalo de retenção do log binário ([`binlog retention hours`](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/mysql-stored-proc-configuring.html#mysql_rds_set_configuration-usage-notes.binlog-retention-hours)), use o procedimento [`mysql.rds_set_configuration`](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/mysql-stored-proc-configuring.html#mysql_rds_set_configuration):

    [//]: # "OBSERVAÇÃO A maioria dos provedores de CDC recomenda o período máximo de retenção para o Aurora RDS (7 dias/168 horas). Como isso afeta o uso de disco, recomendamos de forma conservadora um mínimo de 3 dias/72 horas."

    ```text theme={null}
    mysql=> call mysql.rds_set_configuration('binlog retention hours', 72);
    ```

    Se essa configuração não estiver definida ou estiver configurada com um intervalo muito baixo, isso pode causar lacunas nos logs binários, comprometendo a capacidade do ClickPipes de retomar a replicação.
  </Step>
</Steps>

<div id="binlog-settings">
  ## Configure as configurações do binlog
</div>

O grupo de parâmetros pode ser encontrado ao clicar na sua instância MySQL no RDS Console e, em seguida, navegar até a aba **Configuration**.

<Tip>
  Se você tiver um cluster MySQL, os parâmetros abaixo podem ser encontrados no grupo de parâmetros do [DB cluster](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/USER_WorkingWithParamGroups.CreatingCluster.html), em vez do grupo da instância DB.
</Tip>

<Image img="https://mintcdn.com/private-7c7dfe99/Rm4A9_kDxZf0ApeE/images/integrations/data-ingestion/clickpipes/mysql/parameter_group/aurora_config.webp?fit=max&auto=format&n=Rm4A9_kDxZf0ApeE&q=85&s=ec0ef20aec0663ad14d674699ce54c1b" alt="Onde encontrar o grupo de parâmetros no Aurora" size="lg" border width="1524" height="901" data-path="images/integrations/data-ingestion/clickpipes/mysql/parameter_group/aurora_config.webp" />

<br />

Clique no link do grupo de parâmetros para ir à página dedicada a ele. Você deverá ver um botão **Edit** no canto superior direito.

<Image img="https://mintcdn.com/private-7c7dfe99/Rm4A9_kDxZf0ApeE/images/integrations/data-ingestion/clickpipes/mysql/parameter_group/edit_button.webp?fit=max&auto=format&n=Rm4A9_kDxZf0ApeE&q=85&s=3b73e47820d72b09c2238a8fce0df716" alt="Editar o grupo de parâmetros" size="lg" border width="1662" height="292" data-path="images/integrations/data-ingestion/clickpipes/mysql/parameter_group/edit_button.webp" />

<br />

Os parâmetros a seguir precisam ser definidos da seguinte forma:

1. `binlog_format` como `ROW`.

<Image img="https://mintcdn.com/private-7c7dfe99/Rm4A9_kDxZf0ApeE/images/integrations/data-ingestion/clickpipes/mysql/parameter_group/binlog_format.webp?fit=max&auto=format&n=Rm4A9_kDxZf0ApeE&q=85&s=98ccb656415f8e43ebfe03c26f4bf908" alt="Formato do binlog como ROW" size="lg" border width="960" height="232" data-path="images/integrations/data-ingestion/clickpipes/mysql/parameter_group/binlog_format.webp" />

2. `binlog_row_metadata` como `FULL`.

<Image img="https://mintcdn.com/private-7c7dfe99/Rm4A9_kDxZf0ApeE/images/integrations/data-ingestion/clickpipes/mysql/parameter_group/binlog_row_metadata.webp?fit=max&auto=format&n=Rm4A9_kDxZf0ApeE&q=85&s=75008a3321f0b26b2111d8f14d80e3fe" alt="Metadados de linha do binlog" size="lg" border width="934" height="234" data-path="images/integrations/data-ingestion/clickpipes/mysql/parameter_group/binlog_row_metadata.webp" />

3. `binlog_row_image` como `FULL`.

<Image img="https://mintcdn.com/private-7c7dfe99/Rm4A9_kDxZf0ApeE/images/integrations/data-ingestion/clickpipes/mysql/parameter_group/binlog_row_image.webp?fit=max&auto=format&n=Rm4A9_kDxZf0ApeE&q=85&s=a5660a6f88829e05eefca1eb7dcea83a" alt="Imagem de linha do binlog" size="lg" border width="934" height="234" data-path="images/integrations/data-ingestion/clickpipes/mysql/parameter_group/binlog_row_image.webp" />

<br />

Em seguida, clique em **Save Changes** no canto superior direito. Talvez seja necessário reiniciar sua instância para que as alterações entrem em vigor — você saberá disso se vir `Pending reboot` ao lado do link do grupo de parâmetros na aba **Configuration** da instância Aurora.

<div id="gtid-mode">
  ## Ative o modo GTID (recomendado)
</div>

<Tip>
  O ClickPipe do MySQL também oferece suporte à replicação sem o modo GTID. No entanto, é recomendável ativar o modo GTID para obter melhor desempenho e facilitar a solução de problemas.
</Tip>

[Global Transaction Identifiers (GTIDs)](https://dev.mysql.com/doc/refman/8.0/en/replication-gtids.html) são IDs exclusivos atribuídos a cada transação confirmada no MySQL. Eles simplificam a replicação do binlog e tornam a solução de problemas mais simples. **Recomendamos** ativar o modo GTID para que o ClickPipe do MySQL possa usar a replicação baseada em GTID.

A replicação baseada em GTID é compatível com Amazon Aurora MySQL v2 (MySQL 5.7) e v3 (MySQL 8.0), bem como com Aurora Serverless v2. Para ativar o modo GTID na sua instância do Aurora MySQL, siga estas etapas:

1. No RDS Console, clique na sua instância do MySQL.
2. Clique na guia **Configuration**.
3. Clique no link do grupo de parâmetros.
4. Clique no botão **Edit** no canto superior direito.
5. Defina `enforce_gtid_consistency` como `ON`.
6. Defina `gtid-mode` como `ON`.
7. Clique em **Save Changes** no canto superior direito.
8. Reinicie sua instância para que as alterações entrem em vigor.

<Image img="https://mintcdn.com/private-7c7dfe99/Rm4A9_kDxZf0ApeE/images/integrations/data-ingestion/clickpipes/mysql/enable_gtid.webp?fit=max&auto=format&n=Rm4A9_kDxZf0ApeE&q=85&s=e27af3084b41fb2f1c326542f14c01d1" alt="GTID ativado" size="lg" border width="1650" height="469" data-path="images/integrations/data-ingestion/clickpipes/mysql/enable_gtid.webp" />

<div id="configure-database-user">
  ## Configure um usuário do banco de dados
</div>

Conecte-se à sua instância do Aurora MySQL como usuário administrador e execute os seguintes comandos:

1. Crie um usuário dedicado para o ClickPipes:

   ```sql theme={null}
   CREATE USER 'clickpipes_user'@'%' IDENTIFIED BY 'some-password';
   ```

2. Conceda permissões no schema. O exemplo a seguir mostra as permissões para o banco de dados `mysql`. Repita esses comandos para cada banco de dados e host que você deseja replicar:

   ```sql theme={null}
   GRANT SELECT ON `mysql`.* TO 'clickpipes_user'@'host';
   ```

3. Conceda permissões de replicação ao usuário:

   ```sql theme={null}
   GRANT REPLICATION CLIENT ON *.* TO 'clickpipes_user'@'%';
   GRANT REPLICATION SLAVE ON *.* TO 'clickpipes_user'@'%';
   ```

<div id="iam-authentication">
  ### Usando autenticação IAM (opcional)
</div>

Em vez de uma senha, você pode autenticar o usuário do ClickPipes por meio do acesso baseado em função do AWS IAM. Crie o usuário da seguinte forma e, em seguida, conceda a ele os mesmos privilégios de schema e replicação mostrados acima:

```sql theme={null}
CREATE USER 'clickpipes_iam_user' IDENTIFIED WITH AWSAuthenticationPlugin AS 'RDS';
```

Consulte [AWS IAM DB authentication (RDS/Aurora)](/docs/pt-BR/integrations/clickpipes/postgres/auth) para ver o passo a passo completo de configuração da IAM role e da política necessárias para que o ClickPipes se autentique dessa forma.

<div id="configure-network-access">
  ## Configurar o acesso à rede
</div>

<div id="ip-based-access-control">
  ### Controle de acesso baseado em IP
</div>

Para restringir o tráfego para sua instância do Aurora MySQL, adicione os [IPs NAT estáticos documentados](/docs/pt-BR/integrations/clickpipes/home#list-of-static-ips) às **regras de entrada** do Security Group do Aurora.

<Image img="https://mintcdn.com/private-7c7dfe99/Rm4A9_kDxZf0ApeE/images/integrations/data-ingestion/clickpipes/mysql/source/rds/security-group-in-rds-mysql.webp?fit=max&auto=format&n=Rm4A9_kDxZf0ApeE&q=85&s=af38397cd478a3e845217f3cc0165a7f" alt="Onde encontrar o Security Group no Aurora MySQL?" size="lg" border width="2850" height="994" data-path="images/integrations/data-ingestion/clickpipes/mysql/source/rds/security-group-in-rds-mysql.webp" />

<Image img="https://mintcdn.com/private-7c7dfe99/dZZG_-B0EzCG8L4V/images/integrations/data-ingestion/clickpipes/postgres/source/rds/edit_inbound_rules.webp?fit=max&auto=format&n=dZZG_-B0EzCG8L4V&q=85&s=1176aa14815b965b841d70d28b5f0d7c" alt="Edite as regras de entrada do Security Group acima" size="lg" border width="1800" height="935" data-path="images/integrations/data-ingestion/clickpipes/postgres/source/rds/edit_inbound_rules.webp" />

<div id="private-access-via-aws-privatelink">
  ### Acesso privado via AWS PrivateLink
</div>

Para se conectar à sua instância do Aurora MySQL por uma rede privada, você pode usar o AWS PrivateLink. Siga o [guia de configuração do AWS PrivateLink para ClickPipes](/docs/pt-BR/resources/support-center/knowledge-base/cloud-services/aws-privatelink-setup-for-clickpipes) para estabelecer a conexão.

<div id="whats-next">
  ## O que vem a seguir?
</div>

Agora que sua instância do Amazon Aurora MySQL está configurada para replicação via binlog e se conecta com segurança ao ClickHouse Cloud, você pode [criar seu primeiro ClickPipe do MySQL](/docs/pt-BR/integrations/clickpipes/mysql/index#create-your-clickpipe). Para perguntas frequentes sobre MySQL CDC, consulte a [página de perguntas frequentes do MySQL](/docs/pt-BR/integrations/clickpipes/mysql/faq).
