Grupos de Disponibilidade AlwaysOn básicos para um banco de dados individual
Aplica-se: SQL Server
Os Grupos de Disponibilidade básicos Always On fornecem uma solução de alta disponibilidade para o SQL Server da versão 2016 em diante na Edição Standard. Um grupo de disponibilidade básica oferece suporte a um ambiente de failover para um único banco de dados. Ele é criado e gerenciado de forma muito semelhante aos Grupos de Disponibilidade Always On tradicionais (avançados) com Edição Enterprise. As diferenças e limitações dos grupos de disponibilidade básica são resumidas neste documento.
Recursos
Grupos de disponibilidade básicos AlwaysOn substituem o recurso de espelhamento de banco de dados preterido e oferecem um nível semelhante de suporte ao recurso. Grupos de disponibilidade básica permitem que um banco de dados primário mantenha uma única réplica. Esta réplica pode usar o modo de confirmação síncrona ou modo de confirmação assíncrona. Para obter mais informações sobre os modos de disponibilidade, confira Modos de disponibilidade. A réplica secundária permanece inativa, a menos que haja uma necessidade de failover. Esse failover inverte as atribuições de função primária e secundária, fazendo com que a réplica secundária se torne o banco de dados primário ativo. Para obter mais informações sobre failover, confira Failover e modos de failover. Grupos de disponibilidade básica podem operar em um ambiente híbrido que abrange o local e o Microsoft Azure.
Limitações
Grupos de disponibilidade básica usam um subconjunto de recursos em comparação com grupos de disponibilidade avançada no SQL Server 2016 Enterprise Edition. Grupos de disponibilidade básica incluem as seguintes limitações:
Limite de duas réplicas (primárias e secundárias). Os Grupos de Disponibilidade Básicos para o SQL Server 2017 no Linux só são compatíveis com uma réplica de configuração adicional.
Sem acesso de leitura na réplica secundária.
Sem backups na réplica secundária.
Sem verificações de integridade em réplicas secundárias.
Não há suporte para réplicas hospedadas em servidores que executam uma versão do SQL Server anterior ao SQL Server 2016 Community Technology Preview 3 (CTP3).
Suporte para um banco de dados de disponibilidade.
Grupos de disponibilidade básica não podem ser atualizados para grupos de disponibilidade avançada. O grupo deve ser removido e adicionado novamente a um grupo que contém servidores que executam somente o SQL Server 2016 Enterprise Edition.
Grupos de disponibilidade básica só têm suporte para servidores do Standard Edition.
Grupos de disponibilidade básicos não podem fazer parte de um grupo de disponibilidade distribuído.
Você pode ter vários grupos de disponibilidade básicos conectados a uma única instância do SQL Server.
Configuração
Um grupo de disponibilidade básico AlwaysOn pode ser criado em quaisquer dois servidores SQL Server 2016 Standard Edition. Quando você cria um grupo de disponibilidade básica, deve especificar ambas as réplicas durante a criação.
Para criar um grupo de disponibilidade básica, use o comando CREATE AVAILABILITY GROUP Transact-SQL e especifique a opção WITH BASIC (o padrão é ADVANCED). Começando na versão 17.8, você também pode criar o grupo de disponibilidade básico usando a interface do usuário no SQL Server Management Studio. Para obter mais informações, confira CREATE AVAILABILITY GROUP.
Veja o seguinte exemplo de como criar um grupo de disponibilidade básico usando Transact-SQL (T-SQL):
CREATE AVAILABILITY GROUP [BasicAG]
WITH (AUTOMATED_BACKUP_PREFERENCE = PRIMARY,
BASIC,
DB_FAILOVER = OFF,
DTC_SUPPORT = NONE,
REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT = 0)
FOR DATABASE [AdventureWorks]
REPLICA ON N'SQLVM1\MSSQLSERVER' WITH (ENDPOINT_URL = N'TCP://SQLVM1.Contoso.com:5022', FAILOVER_MODE = AUTOMATIC, AVAILABILITY_MODE = SYNCHRONOUS_COMMIT, SEEDING_MODE = AUTOMATIC, SECONDARY_ROLE(ALLOW_CONNECTIONS = NO)),
N'SQLVM2\MSSQLSERVER' WITH (ENDPOINT_URL = N'TCP://SQLVM2.Contoso.com:5022', FAILOVER_MODE = AUTOMATIC, AVAILABILITY_MODE = SYNCHRONOUS_COMMIT, SEEDING_MODE = AUTOMATIC, SECONDARY_ROLE(ALLOW_CONNECTIONS = NO));
GO
Observação
As limitações dos grupos de disponibilidade básica aplicam-se ao comando CREATE AVAILABILITY GROUP quando WITH BASIC é especificado. Por exemplo, você obterá um erro se tentar criar um grupo de disponibilidade básica que permite acesso de leitura. Outras limitações aplicam-se da mesma maneira. Consulte a seção Limitações deste tópico para obter detalhes.