sys.availability_replicas (Transact-SQL)

Aplica-se a: SQL Server

Retorna uma linha para cada uma das réplicas de disponibilidade que pertence a um grupo de disponibilidade Always On no cluster de failover WSFC.

Se a instância de servidor local não puder falar com o cluster de failover WSFC, por exemplo, porque o cluster está inativo ou o quorum foi perdido, apenas linhas para réplicas de disponibilidade local são retornadas. Essas linhas conterão apenas as colunas de dados que são armazenados em cache localmente em metadados.

Nome da coluna Tipo de dados Descrição
replica_id uniqueidentifier ID exclusiva da réplica.
group_id uniqueidentifier A ID exclusiva do grupo de disponibilidade ao qual a réplica pertence.
replica_metadata_id int ID do objeto de metadados local para réplicas de disponibilidade no Mecanismo de Banco de Dados.
replica_server_name nvarchar(256) O nome de servidor da instância do SQL Server que hospeda essa réplica e, para uma instância não padrão, seu nome de instância.
owner_sid varbinary(85) O SID (identificador de segurança) registrado para essa instância de servidor para o proprietário externo dessa réplica de disponibilidade.

NULL para réplicas de disponibilidade não locais.
endpoint_url nvarchar(128) Representação de cadeia de caracteres do ponto de extremidade de espelhamento de banco de dados especificado pelo usuário usado pelas conexões entre réplicas primária e secundária para sincronização de dados. Para obter informações sobre a sintaxe das URLs de ponto de extremidade, confira Especificar a URL do ponto de extremidade ao adicionar ou modificar uma réplica de disponibilidade (SQL Server).

NULL = Não é possível se comunicar com o cluster de failover WSFC.

Para alterar esse ponto de extremidade, use a opção ENDPOINT_URL de instrução Transact-SQL ALTER AVAILABILITY GROUP.
availability_mode tinyint O modo de disponibilidade da réplica. Pode ser:

0 | Confirmação assíncrona. A réplica primária pode confirmar transações sem esperar que a réplica secundária grave o log no disco.

1 | Confirmação síncrona. A réplica primária espera para confirmar uma determinada transação até que a réplica secundária tenha gravado a transação em disco.

4 | Somente configuração. A réplica primária envia metadados de configuração do grupo de disponibilidade para a réplica de forma síncrona. Os dados do usuário não são transmitidos para a réplica. Disponível no SQL Server 2017 CU1 e posterior.

Para obter mais informações, confira Modos de Disponibilidade (Grupos de Disponibilidade Always On).
availability_mode_desc nvarchar(60) Descrição de availability_mode, uma das seguintes:

ASYNCHRONOUS_COMMIT

SYNCHRONOUS_COMMIT

CONFIGURATION_ONLY

Para alterar esse modo de disponibilidade de uma réplica de disponibilidade, use a opção AVAILABILITY_MODE da instrução Transact-SQL ALTER AVAILABILITY GROUP.

Não é possível alterar o modo de disponibilidade de uma réplica para CONFIGURATION_ONLY. Você não pode alterar uma réplica CONFIGURATION_ONLY para uma réplica secundária ou primária.
failover_mode tinyint O modo de failover da réplica de disponibilidade, um dos seguintes:

0 | Failover automático. A réplica é um destino potencial para failovers automáticos. O failover automático só terá suporte se o modo de disponibilidade estiver definido como confirmação síncrona (availability_mode = 1) e a réplica de disponibilidade estiver sincronizada no momento.

1 | Failover manual. Um failover para um conjunto de réplicas secundário para failover manual deve ser iniciado manualmente pelo administrador de banco de dados. O tipo de failover executado dependerá se a réplica secundária é sincronizada, da seguinte forma:

Se a réplica de disponibilidade não estiver sincronizando ou se ainda estiver sendo sincronizada, somente o failover forçado (com possível perda de dados) poderá ocorrer.

Se o modo de disponibilidade estiver definido como confirmação síncrona (availability_mode = 1) e a réplica de disponibilidade estiver sincronizada no momento, poderá ocorrer failover manual sem perda de dados.

Para exibir um rollup da integridade de sincronização do banco de dados de cada banco de dados de disponibilidade em uma réplica de disponibilidade, use as colunas synchronization_health e synchronization_health_desc da exibição de gerenciamento dinâmico sys.dm_hadr_availability_replica_states . O rollup considera o estado de sincronização de cada banco de dados de disponibilidade e o modo de disponibilidade da réplica de disponibilidade.

Observação: Para exibir a integridade da sincronização de um determinado banco de dados de disponibilidade, consulte as colunas synchronization_state e synchronization_health da exibição de gerenciamento dinâmico sys.dm_hadr_database_replica_states .
failover_mode_desc nvarchar(60) Descrição de failover_mode, uma das seguintes:

MANUAL

AUTOMATIC

Para alterar o modo de failover, use a opção FAILOVER_MODE da instrução Transact-SQL ALTER AVAILABILITY GROUP.
session_timeout int O período de tempo limite, em segundos. O período de tempo limite é o tempo máximo que a réplica espera para receber uma mensagem de outra réplica antes de considerar que a conexão entre a réplica primária e secundária falhou. O tempo limite da sessão detecta se réplicas secundárias estão conectadas à réplica primária.

Ao detectar uma falha de conexão com uma réplica secundária, a réplica primária considera a réplica secundária como NOT_SYNCHRONIZED. Ao detectar uma falha de conexão com a réplica primária, uma réplica secundária simplesmente tenta se conectar outra vez.

Observação: os tempos limite da sessão não causam failovers automáticos.

Para alterar esse valor, use a opção SESSION_TIMEOUT da instrução Transact-SQL ALTER AVAILABILITY GROUP.
primary_role_allow_connections tinyint Se a disponibilidade permitir todas as conexões ou só conexões de leitura-gravação, um de:

2 = Todas (padrão)

3 = Leitura/gravação
primary_role_allow_connections_desc nvarchar(60) Descrição de primary_role_allow_connections, uma das seguintes:

ALL

READ_WRITE
secondary_role_allow_connections tinyint Se uma réplica de disponibilidade que está executando a função primária (isto é, está atuando como uma réplica secundária) pode aceitar conexões de clientes, um dos seguintes:

0 = Não. Nenhuma conexão é permitida com os bancos de dados na réplica secundária e os bancos de dados não estão disponíveis para acesso de leitura. Esta é a configuração padrão.

1 = Somente leitura. Somente conexões somente leitura são permitidas com os bancos de dados na réplica secundária. Todos os bancos de dados na réplica estão disponíveis para acesso de leitura.

2 = Todos. Todas as conexões são permitidas com os bancos de dados na réplica secundária para acesso somente leitura.

Para obter mais informações, confira Secundárias ativas: réplicas secundárias legíveis (grupos de disponibilidade Always On).
secondary_role_allow_connections_desc nvarchar(60) Descrição de secondary_role_allow_connections, uma das seguintes:

NO

READ_ONLY

ALL
create_date datetime A data em que a réplica foi criada.

NULL = Réplica não nesta instância de servidor.
modify_date datetime A data da última modificação da réplica.

NULL = Réplica não nesta instância de servidor.
backup_priority int Representa a prioridade especificada pelo usuário para executar backups nesta réplica em relação às outras réplicas no mesmo grupo de disponibilidade. O valor é um número inteiro no intervalo de 0..100.

Para obter mais informações, confira Secundárias ativas: backup em réplicas secundárias (grupos de disponibilidade Always On).
read_only_routing_url nvarchar(256) Ponto de extremidade de conectividade (URL) da réplica de disponibilidade somente leitura. Para obter informações, veja Configurar o roteamento somente leitura para um grupo de disponibilidade (SQL Server).
read_write_routing_url nvarchar(256) SQL Server 2019 (15.x) e posterior. URL (ponto de extremidade de conectividade) para quando a réplica é o primário. Confira mais informações em Redirecionamento de conexão leitura/gravação de réplica secundária para primária (Grupos de Disponibilidade Always On).
seeding_mode tinyint Um destes:

0: Automático

1: Manual
seeding_mode_desc nvarchar(60) Descreve o modo de propagação.

AUTOMATIC

MANUAL

Segurança

Permissões

Requer a permissão VIEW ANY DEFINITION na instância de servidor.

Confira também