Compartilhar via


sys.availability_replicas (Transact-SQL)

Aplica-se:SQL Server

Retorna uma linha para cada uma das réplicas de disponibilidade que pertencem a qualquer grupo de disponibilidade Always On no WSFC (Cluster de Failover do Windows Server).

Se a instância do servidor local não puder se conectar ao cluster de failover do WSFC, por exemplo, porque o cluster está inativo ou o quorum é perdido, sys.availability_replicas retorna apenas linhas para réplicas de disponibilidade locais. Essas linhas contêm apenas as colunas de dados que são armazenadas 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) Nome do 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(256) 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 do ponto de extremidade, consulte Especificar URL do Ponto de Extremidade – Adicionando ou modificando a réplica de disponibilidade.

NULL = Não é possível falar com o cluster de failover do WSFC.

Para alterar esse ponto de extremidade, use a opção ENDPOINT_URL de instrução ALTER AVAILABILITY GROUP Transact-SQL.
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.

Para obter mais informações, consulte Diferenças entre os modos de disponibilidade de um grupo de disponibilidade AlwaysOn.

Aplica-se ao SQL Server 2017 (14.x) 1 e versões posteriores.
availability_mode_desc nvarchar(60) Descrição de availability_mode, um dos seguintes:

ASYNCHRONOUS_COMMIT
SYNCHRONOUS_COMMIT
CONFIGURATION_ONLY

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

Você não pode alterar o modo de disponibilidade de uma réplica para CONFIGURATION_ONLY. Você não pode alterar uma CONFIGURATION_ONLY réplica 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. Quando uma réplica secundária é configurada para failover manual, o administrador do banco de dados deve iniciar manualmente o failover. O tipo de failover executado depende se a réplica secundária é sincronizada, da seguinte maneira:

Se a réplica de disponibilidade não estiver sincronizando ou ainda estiver sincronizando, 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, o failover manual sem perda de dados poderá ocorrer.

Para exibir um rollup da integridade de sincronização de banco de dados de cada banco de dados de disponibilidade em uma réplica de disponibilidade, use as colunas e synchronization_health_desc as synchronization_health colunas do modo de 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.

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

MANUAL
AUTOMATIC

Para alterar o modo de failover, use a opção FAILOVER_MODE de instrução ALTER AVAILABILITY GROUP Transact-SQL.
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 aguarda 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 secundários estão conectados à réplica primária.

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

Nota: Os tempos limite de sessão não causam failovers automáticos.

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

2 = Todos (padrão)
3 = Leitura de gravação
primary_role_allow_connections_desc nvarchar(60) Descrição de primary_role_allow_connections, um dos seguintes:

ALL
READ_WRITE
secondary_role_allow_connections tinyint Se uma réplica de disponibilidade que está executando a função secundária (ou seja, uma réplica secundária) pode aceitar conexões de clientes, uma delas:

0 = Não. Nenhuma conexão tem permissão para 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 = Tudo. 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, consulte Descarregar carga de trabalho somente leitura para a réplica secundária de um grupo de disponibilidade Always On.
secondary_role_allow_connections_desc nvarchar(60) Descrição de secondary_role_allow_connections, um dos seguintes:

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

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

NULL = A réplica não está nesta instância do 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 mais informações, confira Descarregar backups com suporte em réplicas secundárias de um grupo de disponibilidade.
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 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
read_write_routing_url nvarchar(256) 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).

Aplica-se a: SQL Server 2019 (15.x) e versões posteriores.

Permissões

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