Requisitos e dicas para configurar a replicação

Nesta página, mostraremos os requisitos e as práticas recomendadas para trabalhar com réplicas de leitura e réplicas externas.

Para informações sobre como configurar uma réplica de leitura, consulte Como criar réplicas de leitura.

Réplicas de leitura

As réplicas de leitura são instâncias do Cloud SQL que replicam uma instância principal do Cloud SQL. Essas réplicas são somente leitura, Não é possível fazer gravações nelas. É possível usar uma réplica para descarregar solicitações de leitura e tráfego de análise da instância principal.

Para informações sobre como configurar uma réplica de leitura, consulte Como criar réplicas de leitura.

Requisitos da instância principal da réplica de leitura

Antes de criar uma réplica de leitura a partir de uma instância do Cloud SQL, essa instância precisa atender aos requisitos a seguir:

  • A geração de registros binários precisa estar ativada. Saiba mais.
  • Pelo menos um backup precisa ser criado após a ativação da geração de registros binários.

Referência rápida com tópicos sobre as réplicas de leitura do Cloud SQL

Tópico Discussão
Alta disponibilidade As réplicas de leitura não garantem nem oferecem alta disponibilidade.
Failover Não é possível fazer o failover de uma instância principal para uma réplica de leitura. Além disso, as réplicas de leitura não realizam qualquer tipo de failover durante uma interrupção.
Janelas de manutenção Não é possível definir janelas de manutenção em réplicas de leitura. Além disso, elas não compartilham as janelas de manutenção com a instância principal. A manutenção pode ocorrer a qualquer momento na réplica de leitura. Porém, ela não acontece no mesmo horário que a manutenção da instância principal.
Upgrades que causam interrupções É possível que as réplicas de leitura passem por um upgrade que as interrompa a qualquer momento.
Desempenho Quando você cria uma réplica de leitura, ela não impacta o desempenho ou a disponibilidade da instância principal.
Várias réplicas de leitura É possível criar várias réplicas de leitura a partir de uma instância principal.
Balanceamento de carga O Cloud SQL não fornece balanceamento de carga entre as réplicas.
Settings As configurações MySQL da instância principal são propagadas para a réplica, incluindo a senha raiz e as mudanças feitas na tabela do usuário. As mudanças de nível não são propagadas para a réplica.
Tipos de máquina É possível que as réplicas de leitura sejam um tipo de máquina (ou camada) diferente do que a instância principal. Também é possível que elas tenham mais CPUs e memória do que a instância principal, mas não menos.
Tabelas do usuário Você não pode fazer alterações na tabela do usuário na réplica. Todas as modificações do usuário precisam ser realizadas na instância principal.
Backups Não é possível configurar backups na réplica.
Como restaurar a instância principal Enquanto uma réplica existir, não será possível restaurar a instância principal dela. Antes de restaurar uma instância de um backup ou executar uma recuperação pontual, primeiro é preciso promover ou excluir todas as réplicas correspondentes.
Como excluir a instância principal Antes de excluir uma instância principal, você precisa promover todas as réplicas de leitura dela para instâncias independentes ou removê-las.
Como desativar a geração de registros binários Antes de desativar os registros binários em uma instância principal, você precisa promover ou excluir todas as réplicas de leitura dela.
Como criar uma réplica de uma réplica Não é possível criar uma réplica de uma réplica.
Como interromper uma réplica Não é possível interromper (stop) uma réplica, apenas instâncias principais. No entanto, ela pode ser reiniciada (restart), excluída (delete) ou desativada (disable replication).

Cobrança

  • Uma réplica de leitura é cobrada segundo a mesma taxa de uma instância padrão do Cloud SQL. Não há cobrança pela replicação de dados.
  • A instância principal nunca é desativada porque ela sempre mantém uma conexão com a réplica. Esse cenário pode aumentar a cobrança gerada pela instância principal. Saiba mais.

Réplicas de leitura externas

As réplicas de leitura externas são instâncias externas do MySQL replicadas a partir de uma instância principal do Cloud SQL.

Para informações sobre como configurar uma definição da réplica de leitura externa, consulte Configuração de réplicas externas.

Requisitos de configuração da réplica de leitura externa

Requisitos da instância principal:

A geração de registros binários precisa estar ativada na instância principal. Saiba mais.

Requisitos da réplica externa:

A versão MySQL da réplica precisa ser igual ou superior à da instância principal. Saiba mais

Informações sobre a configuração da réplica externa

Os seguintes fatos se aplicam à configuração da réplica externa:

  • Uma instância do MySQL em execução no Compute Engine é considerada uma instância externa.
  • Os dados transmitidos da instância principal para a réplica externa são cobrados como saída de rede. Consulte a página de preços para ver os preços de saída de rede do tipo de instância do Cloud SQL.
  • A replicação para uma instância do MySQL hospedada por outra plataforma de nuvem talvez não seja possível. Verifique a documentação do outro fornecedor.
  • Se a replicação parar por algumas horas, por exemplo, por uma interrupção da rede ou do servidor, a réplica ficará atrasada em relação à instância principal. Assim que se reconectar à instância principal, ela precisará se recuperar e começar a replicar novamente. Porém, caso a replicação fique pausada por um tempo maior que o período de preservação dos registros de replicação do Cloud SQL (sete backups), você precisará excluir a réplica e criar uma nova.
  • Por questões de segurança, configure o SSL/TLS na instância principal. Saiba mais.

Impacto da geração de registros binários

Você precisa ativar o registro binário da instância principal para aceitar as réplicas de leitura. Isso tem os seguintes impactos:

  • Sobrecarga no desempenho

    O Cloud SQL usa a replicação baseada em linhas com as sinalizações sync_binlog=1 e innodb_support_xa=true do MySQL. Por isso, um disco adicional fsync é obrigatório para cada operação de gravação, o que reduz o desempenho.

  • sobrecarga no armazenamento

    O armazenamento de registros binários é cobrado segundo a mesma taxa dos dados regulares. O Cloud SQL mantém registros binários desde o momento em que o backup mais antigo foi feito. Atualmente, o Cloud SQL mantém os sete backups mais recentes automatizados, além de todos os sob demanda. O tamanho dos registros binários e, assim, do valor cobrado, depende da carga de trabalho. Por exemplo, uma carga de trabalho de muita gravação consome mais espaço do registro binário do que uma de muita leitura.

    Você pode ver o tamanho de registros binários usando o comando MySQL SHOW BINARY LOGS.

    Quando os backups são realizados, os registros são armazenados neles com os dados.

    Os registros binários são automaticamente truncados para a idade do backup automático mais antigo.

  • Reinicialização da instância

    Quando você ativa ou desativa a geração de registros binários, a instância é reiniciada. As conexões de banco de dados existentes são perdidas e precisam ser restabelecidas.

A seguir