Características do Snowflake Connector for MySQL

Importante

Agradecemos pelo seu interesse no conector Snowflake para MySQL. Agora, estamos focados em uma solução de próxima geração que oferecerá uma experiência significativamente melhor. Portanto, no momento não temos planos de passar esse conector para o status de disponibilidade geral. Você pode continuar usando esse conector como um recurso em versão preliminar, mas o suporte para futuras correções de bugs e melhorias não é garantido. A nova solução está disponível como Conector Openflow para MySQL e inclui melhor desempenho, personalização e opções aprimoradas de implantação.

Suporte à versão

Nossa política geral é que o Snowflake Connector for MySQL oferece suporte a qualquer versão do MySQL com suporte oficial a longo prazo (LTS). Vamos eliminar gradualmente o suporte para versões mais antigas à medida que nossos usuários passarem para as mais recentes. O suporte para novas versões será anunciado assim que elas forem lançadas.

Embora o conector ofereça suporte a uma série de tipos de nuvens MySQL, alguns exigem configurações adicionais. Consulte Pré-requisitos para fontes de dados do Snowflake Connector for MySQL.

A tabela a seguir mostra as versões testadas e com suporte oficial.

Lista de versões do PostgreSQL com suporte oficial

8,0

8,4

Padrão

Sim

Sim

AWS RDS

Sim

Amazon Aurora

Sim, como a versão 3

GCP Cloud SQL

Sim

Sim

Banco de dados do Azure

Não

Configurações do servidor

Para que o conector funcione corretamente, revise e ajuste as seguintes configurações no servidor MySQL.

log_bin

Defina como on.

Isso habilita o log binário que registra alterações estruturais e de dados.

binlog_format

Defina como row.

O conector suporta apenas a replicação baseada em linhas. Versões MySQL 8.x podem ser as últimas a suportar essa configuração, e as versões futuras suportarão apenas a replicação baseada em linhas.

Não aplicável em GCP Cloud SQL, onde é fixado no valor correto.

binlog_row_metadata

Defina como full.

O conector requer todos os metadados da linha para operar, principalmente os nomes das colunas e as informações da chave primária.

binlog_row_image

Defina como full.

O conector exige que todas as colunas sejam gravadas no registro binário.

Não aplicável no Amazon Aurora, onde é fixado no valor correto.

binlog_row_value_options

Deixe em branco.

Essa opção afeta apenas as colunas JSON, onde pode ser definida para incluir apenas as partes modificadas dos documentos JSON para as instruções UPDATE. O conector exige que os documentos completos sejam gravados no registro binário.

binlog_expire_logs_seconds

Defina por pelo menos algumas horas ou mais, para garantir que o agente de banco de dados possa continuar a replicação incremental após pausas ou períodos de inatividade mais longos.

Se você estiver usando a replicação programada, o valor precisa ser maior do que o cronograma configurado.

O log binário

Uma vez ativado, o log binário do MySQL coleta alterações de todas as tabelas em uma determinada instância. Não é possível excluir tabelas ou colunas. Por isso, o conector receberá alterações de todas as tabelas do banco de dados, e o agente de banco de dados processará as alterações das tabelas que você configurar para replicação, mas descartará as alterações de todas as outras tabelas.

Cada alteração precisa ser carregada primeiro pelo agente de banco de dados. Para algumas alterações particularmente grandes, como das colunas BLOB, mesmo que sejam feitas em tabelas não configuradas para replicação, elas podem esgotar a memória do agente de banco de dados e fazer com que ele trave. Se você armazenar valores particularmente grandes em qualquer lugar do banco de dados, não se esqueça de configurar memória suficiente para o agente de banco de dados e o contêiner.

O tamanho da transação depende dos limites de replicação do MySQL de menos de 4 GB. Transações que ultrapassarem esse limite causarão uma falha permanente na replicação da tabela afetada.

Autenticação do agente

O único método de autenticação compatível atualmente é nome de usuário e senha. Cada entrada de fonte de dados na configuração do agente de banco de dados inclui um conjunto próprio de credenciais, e elas podem ser diferentes para cada fonte de dados.

Os usuários do agente de banco de dados devem ter as seguintes concessões:

  • REPLICATION SLAVE em todos os esquemas e tabelas

  • REPLICATION CLIENT em todos os esquemas e tabelas

  • SELECT em todos os esquemas e tabelas

Para instruções sobre como criar um usuário para o agente do banco de dados, consulte Criação do usuário necessário.