Configurar a replicação atrasada com o MariaDB - Amazon Relational Database Service

Configurar a replicação atrasada com o MariaDB

Você pode usar a replicação atrasada como uma estratégia para a recuperação de desastres. Com a replicação atrasada, você especifica o tempo mínimo, em segundos, para atrasar a replicação da origem para a réplica de leitura. Em caso de um desastre, como uma tabela excluída acidentalmente, você executa as seguintes etapas para recuperar-se rapidamente do desastre:

nota
  • A replicação atrasada é compatível com o MariaDB 10.6 e posteriores.

  • Use procedimentos armazenados para configurar a replicação atrasada. Você não pode configurar a replicação atrasada com o AWS Management Console, a AWS CLI ou a API do Amazon RDS.

  • Você pode usar a replicação com base em identificadores de transação global (GTIDs) em uma configuração de replicação atrasada.

Configurar replicação atrasada durante a criação da réplica de leitura

Para configurar a replicação atrasada para qualquer réplica de leitura futura criada a partir de uma instância de banco de dados, execute o procedimento armazenado mysql.rds_set_configuration com o parâmetro target delay.

Para configurar a replicação atrasada durante a criação da réplica de leitura
  1. Usando um cliente MariaDB, conecte-se à instância de banco de dados MariaDB que será a origem para réplicas de leitura como o usuário primário.

  2. Execute o procedimento armazenado mysql.rds_set_configuration com o parâmetro target delay.

    Por exemplo, execute o procedimento armazenado a seguir para especificar que a replicação é atrasada em pelo menos uma hora (3,600 segundos) para qualquer réplica de leitura criada a partir da instância de banco de dados atual.

    call mysql.rds_set_configuration('target delay', 3600);
    nota

    Após executar esse procedimento armazenado, qualquer réplica de leitura que você criar usando a AWS CLI ou a API do Amazon RDS será configurada com a replicação atrasada pelo número de segundos especificado.

Modificar replicação atrasada de uma réplica de leitura existente

Para modificar a replicação atrasada para uma réplica de leitura existente, execute o procedimento armazenado mysql.rds_set_source_delay.

Para modificar a replicação atrasada para uma réplica de leitura existente
  1. Usando um cliente do MariaDB, conecte-se à réplica de leitura como o usuário primário.

  2. Use o procedimento armazenado mysql.rds_stop_replication para interromper a replicação.

  3. Execute o procedimento armazenado mysql.rds_set_source_delay.

    Por exemplo, execute o procedimento armazenado a seguir para especificar que a replicação para a réplica de leitura é atrasada em pelo menos uma hora (3.600 segundos) para qualquer réplica de leitura criada a partir da instância de banco de dados atual.

    call mysql.rds_set_source_delay(3600);
  4. Use o procedimento armazenado mysql.rds_start_replication para iniciar a replicação.

Promover uma réplica de leitura

Após a replicação ser interrompida, em um cenário de recuperação de desastres, você pode promover uma réplica de leitura para ser a nova instância de banco de dados de origem. Para obter informações sobre como promover uma réplica de leitura, consulte Promoção de uma réplica de leitura a uma instância de banco de dados autônoma.