Implantações multi-AZ para o Amazon RDS for Microsoft SQL Server - Amazon Relational Database Service

Implantações multi-AZ para o Amazon RDS for Microsoft SQL Server

As implantações Multi-AZ oferecem maior disponibilidade, durabilidade de dados e tolerância a falhas para instâncias de banco de dados. No caso de uma manutenção planejada do banco de dados ou de uma interrupção não planejada do serviço, o Amazon RDS faz failover automático para a instância de banco de dados secundário atualizada. Essa funcionalidade permite que as operações do banco de dados sejam retomadas rapidamente sem intervenção manual. As instâncias primária e em espera usam o mesmo endpoint, cujo endereço de rede física faz a transição para a réplica secundária como parte do processo de failover. Não é necessário reconfigurar seu aplicativo quando ocorre um failover.

O Amazon RDS comporta implantações multi-AZ para Microsoft SQL Server usando o SQL Server Database Mirroring (DBM) ou grupos de disponibilidade Always On (AGs) ou replicação em nível de bloco. O Amazon RDS monitora e mantém a integridade de sua implantação Multi-AZ. Caso ocorram problemas, o RDS repara automaticamente instâncias de banco de dados não íntegras, reestabelece a sincronização e inicia os failovers. O failover só ocorrerá se o modo em espera e o primário estiverem totalmente sincronizados. Você não precisa gerenciar tudo.

Quando você configura o multi-AZ do SQL Server, o RDS configura automaticamente todos os bancos de dados na instância para usar DBM, AGs ou replicação em nível de bloco. O Amazon RDS processa as instâncias primária, a testemunha e de banco de dados secundária para você ao configurar o DBM ou AGs. Para replicação em nível de bloco, o RDS processa as instâncias primária e de banco de dados secundária. Como a configuração é automática, o RDS selecione DBM, Always On AGS ou replicação em nível de bloco com base na versão do SQL Server implantada.

O Amazon RDS oferece suporte a Multi-AZ com Always On AGs para as seguintes versões e edições do SQL Server:

  • SQL Server 2022:

    • Edição Standard

    • Edição Enterprise

  • SQL Server 2019:

    • Standard Edition 15.00.4073.23 e posteriores

    • Edição Enterprise

  • SQL Server 2017:

    • Standard Edition 14.00.3401.7 e posteriores

    • Enterprise Edition 14.00.3049.1 e posteriores

  • SQL Server 2016: Enterprise Edition 13.00.5216.0 e posterior

O Amazon RDS oferece suporte a Multi-AZ com DBM para as seguintes versões e edições do SQL Server, exceto para as versões indicadas anteriormente:

  • SQL Server 2019: Standard Edition 15.00.4043.16

  • SQL Server 2017: Standard e Enterprise Editions

  • SQL Server 2016: Standard e Enterprise Editions

O Amazon RDS comporta multi-AZ com replicação em nível de bloco para SQL Server 2022 Web Edition 16.00.4215.2 e posterior.

nota

Somente novas instâncias de banco de dados criadas com 16.00.4215.2 ou posterior comportam implantações multi-AZ com replicação em nível de bloco. As seguintes restrições se aplicam às instâncias existentes do SQL Server 2022 Web Edition:

  • Para instâncias existentes na versão 16.00.4215.2, você deve restaurar um snapshot em uma nova instância com a mesma versão secundária ou posterior para permitir a replicação em nível de bloco.

  • As instâncias Web do SQL Server 2022 com uma versão secundária mais antiga podem ser atualizadas para a versão secundária 16.00.4215.2 ou posterior para habilitar a replicação em nível de bloco.

Você pode usar a seguinte consulta SQL para determinar se sua instância de banco de dados do SQL Server é single-AZ, multi-AZ com DBM ou multi-AZ com AGs Always On: Essa consulta não se aplica a implantações multi-AZ no SQL Server Web Edition.

SELECT CASE WHEN dm.mirroring_state_desc IS NOT NULL THEN 'Multi-AZ (Mirroring)' WHEN dhdrs.group_database_id IS NOT NULL THEN 'Multi-AZ (AlwaysOn)' ELSE 'Single-AZ' END 'high_availability' FROM sys.databases sd LEFT JOIN sys.database_mirroring dm ON sd.database_id = dm.database_id LEFT JOIN sys.dm_hadr_database_replica_states dhdrs ON sd.database_id = dhdrs.database_id AND dhdrs.is_local = 1 WHERE DB_NAME(sd.database_id) = 'rdsadmin';

A saída será semelhante à seguinte.

high_availability Multi-AZ (AlwaysOn)

Adicionar Multi-AZ a uma instância de banco de dados do Microsoft SQL Server

Ao criar uma instância de banco de dados do SQL Server usando o Console de gerenciamento da AWS, você pode adicionar multi-AZ com Database Mirroring (DBM), AGs Always On ou replicação em nível de bloco. Faça isso selecionando Sim (Espelhamento/Always On/Replica em nível de bloco) em Implantação multi-AZ. Para obter mais informações, consulte Criar uma instância de banco de dados do Amazon RDS.

Ao modificar uma instância de banco de dados do SQL Server existente usando o console, você pode adicionar multi-AZ com DBM, AGs ou replicação em nível de bloco escolhendo Sim (Espelhamento/Always On/Replicação em nível de bloco) na lista Implantação multi-AZ na página Modificar instância de banco de dados. Para obter mais informações, consulte Modificar uma instância de banco de dados do Amazon RDS.

nota

Se a instância de banco de dados estiver executando o DBM (Database Mirroring) — e não AGs (Grupos de disponibilidade Always On) — talvez seja necessário desabilitar a otimização na memória antes de adicionar Multi-AZ. Desabilite a otimização na memória com DBM antes de adicionar multi-AZ se a instância de banco de dados executar o SQL Server 2016 ou 2017 Enterprise Edition e tiver a otimização na memória habilitada.

Se a instância de banco de dados estiver executando AGs ou replicação em nível de bloco para as edições Web do SQL Server, não será necessário realizar essa etapa.

Remover multi-AZ de uma instância de banco de dados do Microsoft SQL Server

Ao modificar uma instância de banco de dados do SQL Server existente usando o Console de gerenciamento da AWS, você pode remover multi-AZ com DBM, AGs ou replicação em nível de bloco. Para fazer isso, escolha Não (Espelhamento/Always On/Replicação em nível de bloco) em Implantação multi-AZ na página Modificar instância de banco de dados. Para obter mais informações, consulte Modificar uma instância de banco de dados do Amazon RDS.