Trabalhar com réplicas de leitura do Microsoft SQL Server no Amazon RDS - Amazon Relational Database Service

Trabalhar com réplicas de leitura do Microsoft SQL Server no Amazon RDS

Normalmente, você usa réplicas de leitura para configurar a replicação entre as instâncias de banco de dados do Amazon RDS. Para obter informações gerais sobre réplicas de leitura, consulte Como trabalhar com réplicas de leitura.

Nesta seção, você pode encontrar informações específicas sobre como trabalhar com réplicas de leitura no Amazon RDS for SQL Server.

Configurar réplicas de leitura do SQL Server

Antes que uma instância de banco de dados possa servir como uma instância de origem para replicação, é necessário habilitar backups automáticos na instância de banco de dados de origem. Para fazer isso, defina o período de retenção de backup como um valor diferente de 0. A instância de banco de dados de origem deve ser uma implantação Multi-AZ com Grupos de disponibilidade (AGs) Always On. Definir esse tipo de implantação também impõe que os backups automáticos estejam habilitados.

Criar uma réplica de leitura do SQL Server não requer a interrupção da instância de banco de dados primária. O Amazon RDS define os parâmetros e as permissões necessários para a instância banco de dados de origem e para a réplica de leitura sem qualquer interrupção do serviço. Um snapshot é feito da instância de banco de dados de origem, e esse snapshot se torna a réplica de leitura. Quando você exclui uma réplica de leitura, não ocorre nenhuma interrupção.

Você pode criar até cinco réplicas de leitura de uma instância de banco de dados de origem. Para que a replicação funcione eficazmente, recomendamos configurar cada réplica de leitura com a mesma quantidade de recursos de computação e de armazenamento que a instância de banco de dados de origem. Se você dimensionar a instância de banco de dados de origem, dimensione as réplicas de leitura também.

A versão do mecanismo de banco de dados SQL Server da instância de banco de dados de origem e todas as réplicas de leitura devem ser iguais. O Amazon RDS atualiza aa primária imediatamente após a atualização das réplicas de leitura, desconsiderando a janela de manutenção de uma réplica. Para obter mais informações sobre como atualizar a versão do mecanismo de banco de dados, consulte Atualizar o mecanismo de banco de dados Microsoft SQL Server.

Para que uma réplica de leitura receba e aplique alterações da origem, ela deve ter recursos suficientes de computação e armazenamento. Se uma réplica de leitura atingir a capacidade de recursos de computação, rede ou armazenamento, ela deixará de receber ou aplicar alterações de sua origem. É possível modificar os recursos de armazenamento e CPU de uma réplica de leitura independentemente de sua origem e de outras réplicas de leitura.

Limitações de réplica de leitura com o SQL Server

As seguintes limitações se aplicam a réplicas de leitura do SQL Server no Amazon RDS:

  • Réplicas de leitura só estão disponíveis no mecanismo do SQL Server Enterprise Edition (EE).

  • Réplicas de leitura estão disponíveis para as versões do SQL Server 2016–2019.

  • A instância de banco de dados de origem a ser replicada deve ser uma implantação Multi-AZ com AGs Always On.

  • Réplicas de leitura só estão disponíveis para instâncias de banco de dados em execução em classes de instância de banco de dados com quatro ou mais vCPUs.

  • Os seguintes não são compatíveis com o Amazon RDS for SQL Server:

    • Criar uma réplica de leitura em uma região da AWS diferente (uma réplica de leitura entre regiões)

    • Retenção de backup de réplicas de leitura

    • Recuperação point-in-time de réplicas de leitura

    • Snapshots manuais de réplicas de leitura

    • Réplicas de leitura Multi-AZ

    • Criar réplicas de leitura de réplicas de leitura

    • Sincronização de logins de usuários para réplicas de leitura

  • O Amazon RDS for SQL Server não intervém para atenuar atrasos altos de replicação entre uma instância de banco de dados de origem e suas réplicas de leitura. Certifique-se de que a instância de banco de dados de origem e suas réplicas de leitura estejam dimensionadas corretamente, em termos de capacidade de computação e armazenamento, para atender a suas cargas operacionais.

  • Uma réplica de leitura do SQL Server pertence ao mesmo grupo de opções que a instância de banco de dados de origem. Modificações no grupo de opções de origem ou na associação do grupo de opções de origem são propagadas para réplicas de leitura. Essas alterações serão aplicadas às réplicas de leitura logo depois de serem aplicadas à instância de banco de dados de origem, independentemente da janela de manutenção da réplica de leitura.

    Para obter mais informações sobre grupos de opções, consulte Trabalhar com grupos de opções.

Solução de problemas de uma réplica de leitura do SQL Server

Você pode monitorar o atraso da replicação no Amazon CloudWatch visualizando a métrica ReplicaLag do Amazon RDS. Para obter informações sobre o tempo de atraso de replicação, consulte Monitoramento da replicação de leitura.

Se o atraso de replicação for muito longo, use a seguinte consulta para obter informações sobre esse atraso:

SELECT AR.replica_server_name , DB_NAME (ARS.database_id) 'database_name' , AR.availability_mode_desc , ARS.synchronization_health_desc , ARS.last_hardened_lsn , ARS.last_redone_lsn , ARS.secondary_lag_seconds FROM sys.dm_hadr_database_replica_states ARS INNER JOIN sys.availability_replicas AR ON ARS.replica_id = AR.replica_id --WHERE DB_NAME(ARS.database_id) = 'database_name' ORDER BY AR.replica_server_name;