Compartilhar via


Exibições de gerenciamento dinâmico e exibições de catálogo do sistema (Grupos de Disponibilidade Always On)

Aplica-se a: SQL Server

Este tópico mostra algumas das consultas comuns em DMVs (exibições de gerenciamento dinâmico) do Always On que você pode usar para monitorar e solucionar problemas de grupos de disponibilidade.

Dica

No Painel Always On, você pode configurar facilmente a GUI para exibir muitas das DMVs das réplicas de disponibilidade e bancos de dados de disponibilidade clicando com o botão direito do mouse no respectivo cabeçalho de tabela e selecionando a DMV que você deseja exibir ou ocultar.

Para obter mais informações sobre as DMVs do grupo de disponibilidade, veja Funções e exibições de gerenciamento dinâmico de Grupos de Disponibilidade Always On (Transact-SQL). Para obter mais informações sobre a as exibições de catálogo de grupos de disponibilidade, veja Exibições de catálogo de Grupos de Disponibilidade Always On (Transact-SQL).

Verifique a configuração de nó de cluster do WSFC

A seguinte consulta T-SQL (Transact-SQL) recupera o status de todos os nós no cluster atual do WSFC (Cluster de Failover do Windows Server).

use master  
go  
select * from sys.dm_hadr_cluster_members  
go  

Este conjunto de resultados relata o status de cada nó de membro do cluster WSFC atual. Se o quorum for definido como Nó e maioria do compartilhamento de arquivos, até mesmo o compartilhamento de arquivos será relatado. Você pode ver o status de cada nó, inclusive o peso de votação de cada nó (o valor number_of_quorum_votes).

Explorar a rede de cluster

A consulta a seguir recupera a configuração de rede do cluster WSFC atual.

select * from sys.dm_hadr_cluster_networks  

O conjunto de resultados contém uma linha para cada adaptador de rede no cluster WSFC. Por exemplo, em um cluster de dois nós que contém dois adaptadores de rede em cada nó, essa consulta retorna quatro linhas.

Explorar os grupos de disponibilidade

A consulta a seguir recupera informações sobre um grupo de disponibilidade.

select primary_replica, primary_recovery_health_desc, synchronization_health_desc from sys.dm_hadr_availability_group_states  
go  
select * from sys.availability_groups  
go  
select * from sys.availability_groups_cluster  
go  

As DMVs sys.dm_hadr_availability_group_states (Transact-SQL), sys.availability_groups (Transact-SQL) e sys.availability_groups_cluster retornam informações sobre os grupos de disponibilidade no cluster WSFC atual. Na verdade, sys.availability_groups (Transact-SQL) e sys.availability_groups_cluster parecem retornar informações idênticas.

No entanto, a sys.availability_groups_cluster relata metadados do grupo de disponibilidade armazenado no Cluster WSFC, enquanto a sys.availability_groups (Transact-SQL) relata os metadados do grupo de disponibilidade que são armazenados em cache no espaço de processo do SQL Server. Além disso, essas duas DMVs relatam informações de configuração enquanto a sys.dm_hadr_availability_group_states (Transact-SQL) relata os status de integridade atual dos grupos de disponibilidade.

Importante

Essa nomenclatura é transferida com as DMVs que documentam réplicas de disponibilidade e bancos de dados de disponibilidade.

Explorar as réplicas de disponibilidade

A consulta a seguir recupera informações sobre as réplicas de disponibilidade definidas em seus grupos de disponibilidade.

select replica_id, role_desc, connected_state_desc, synchronization_health_desc from sys.dm_hadr_availability_replica_states  
go  
select replica_server_name, replica_id, availability_mode_desc, endpoint_url from sys.availability_replicas  
go  
select replica_server_name, join_state_desc from sys.dm_hadr_availability_replica_cluster_states  
go  

Assim como nas DMVs de grupos de disponibilidade, você encontra três DMVs que relatam em réplicas de disponibilidade. A sys.dm_hadr_availability_replica_states relata informações do estado sobre as réplicas de disponibilidade que são armazenadas localmente em cache no SQL Server, e a sys.dm_hadr_availability_replica_cluster_states relata informações de estado sobre as réplicas de disponibilidade do cluster WSFC. Por fim, a sys.availability_replicas relata dados de configuração sobre as réplicas de disponibilidade, que são armazenadas em cache localmente no SQL Server.

Explorar a integridade da réplica de disponibilidade

A consulta a seguir recupera informações de integridade atuais sobre as réplicas de disponibilidade.

select replica_id, role_desc, recovery_health_desc, synchronization_health_desc from sys.dm_hadr_availability_replica_states  
go  

Compare os resultados da consulta na réplica primária e na réplica secundária e observe que, na réplica secundária, as informações de integridade são relatadas somente para essa réplica e não para as outras réplicas do grupo de disponibilidade.

Explorar os bancos de dados de disponibilidade

A consulta a seguir recupera informações sobre as réplicas de disponibilidade definidas em seu grupo de disponibilidade. Você pode observar as alterações nos resultados da consulta antes e depois de suspender a movimentação de dados em um banco de dados de disponibilidade.

select * from sys.availability_databases_cluster  
go  
select group_database_id, database_name, is_failover_ready  from sys.dm_hadr_database_replica_cluster_states  
go  
select database_id, synchronization_state_desc, synchronization_health_desc, last_hardened_lsn, redo_queue_size, log_send_queue_size from sys.dm_hadr_database_replica_states  
go  

Aqui novamente, três DMVs do Always On apresentam relatórios sobre bancos de dados de disponibilidade. A sys.availability_databases_cluster relata informações de configuração sobre bancos de dados de disponibilidade do cluster WSFC. A sys.dm_hadr_database_replica_cluster_states relata informações de estado sobre as réplicas de banco de dados, que são armazenadas em cache localmente no SQL Server. Ela contém algumas informações de estado importantes, como a preparação para failover da réplica de disponibilidade. Por fim, a sys.dm_hadr_database_replica_states apresenta um conjunto de resultados bastante detalhado que relata informações de identidade e estado de cada banco de dados de disponibilidade, como informações de progresso LSN para os logs das réplicas de banco de dados primária e secundária.

Explorar a integridade do banco de dados de disponibilidade

A consulta a seguir recupera informações sobre a integridade de cada banco de dados de disponibilidade nas réplicas. Você pode observar as alterações nos resultados da consulta antes e depois de suspender a movimentação de dados em um banco de dados de disponibilidade.

select dc.database_name, dr.database_id, dr.synchronization_state_desc,   
dr.suspend_reason_desc, dr.synchronization_health_desc  
from sys.dm_hadr_database_replica_states dr  join sys.availability_databases_cluster dc  
on dr.group_database_id=dc.group_database_id   
where is_local=1  
go