Características Snowflake Connector for MySQL

Nota

O Snowflake Connector for MySQL está sujeito aos Termos do conector.

Suporte à versão

Nossa política geral é que o Snowflake Connector for MySQL é compatível com qualquer versão oficialmente suportada do MySQL Long-Term Support (LTS). Estaremos eliminando gradualmente o suporte a versões mais antigas à medida que nossos usuários migrarem para as mais recentes e anunciaremos o suporte a novas versões à medida que forem lançadas.

Embora o conector seja compatível com vários tipos de nuvem MySQL, alguns deles exigem configurações adicionais. Consulte Pré-requisitos para fontes de dados do Snowflake Connector for MySQL.

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

Lista de versões oficialmente suportadas do PostgreSQL

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 como pelo menos algumas horas, ou mais, para garantir que o agente de banco de dados possa continuar a replicação incremental após pausas prolongadas ou tempo de inatividade.

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

O log binário

O log binário do MySQL, uma vez ativado, coleta alterações de todas as tabelas em uma determinada instância. Não há como excluir tabelas ou colunas. Portanto, o conector receberá alterações de todas as tabelas do banco de dados, e o agente do 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 e, para algumas alterações particularmente grandes, como atualizações de 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 causar falhas. Se você armazenar valores particularmente grandes em qualquer parte do banco de dados, certifique-se de configurar memória suficiente para o agente de banco de dados e seu contêiner.

O tamanho da transação é limitado pelos limites de replicação de MySQL a menos de 4 GB. As transações que ultrapassarem o limite farão com que a replicação da tabela afetada falhe permanentemente.

Autenticação de agentes

O único método de autenticação suportado atualmente é o nome de usuário e a senha. Cada entrada de fonte de dados na configuração do agente de banco de dados inclui seu próprio conjunto de credenciais, que 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 em todas as tabelas

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