Usar as políticas AlwaysOn para exibir a integridade de um grupo de disponibilidade (SQL Server)

Aplica-se a: SQL Server

Este tópico descreve como determinar a integridade operacional de um grupo de disponibilidade AlwaysOn usando a política AlwaysOn no SQL Server Management Studio ou PowerShell no SQL Server. Para obter informações sobre o Gerenciamento Baseado em Política Always On, confira Políticas Always On para Problemas Operacionais com Grupos de Disponibilidade Always On (SQL Server).

Importante

Para políticas AlwaysOn, os nomes das categorias são usados como IDs. A alteração do nome de uma categoria AlwaysOn interrompe sua funcionalidade de avaliação de integridade. Portanto, os nomes das categorias AlwaysOn nunca devem ser modificados.

Permissões

Requer as permissões CONNECT, VIEW SERVER STATE e VIEW ANY DEFINITION.

Usando o Painel AlwaysOn

Para abrir o Painel AlwaysOn

  1. No Pesquisador de Objetos, conecte-se à instância do servidor que hospeda uma das réplicas de disponibilidade. Para exibir informações sobre todas as réplicas de disponibilidade em um grupo de disponibilidade, use a instância do servidor que hospeda a réplica primária.

  2. Clique no nome do servidor para expandir a arvore de servidores.

  3. Expanda o nó Alta Disponibilidade AlwaysOn .

    Clique com o botão direito do mouse no nó Grupos de Disponibilidade ou expanda esse nó e clique com o botão direito do mouse em um grupo de disponibilidade específico.

  4. Selecione o comando Mostrar Painel .

Para obter informações sobre como usar o Painel Always On, veja Usar o Painel Always On (SQL Server Management Studio).

Usando o PowerShell

Use Always On policies to view the health of an availability group

  1. Defina o padrão (cd) como uma instância de servidor que hospeda uma das réplicas de disponibilidade. Para exibir informações sobre todas as réplicas de disponibilidade em um grupo de disponibilidade, use a instância do servidor que hospeda a réplica primária.

  2. Use os seguintes cmdlets:

    Test-SqlAvailabilityGroup
    Avalia a integridade de um grupo de disponibilidade avaliando as políticas do PBM (gerenciamento baseado em políticas) do SQL Server. Você deve ter as permissões CONNECT, VIEW SERVER STATE e VIEW ANY DEFINITION para executar esse cmdlet.

    Por exemplo, o comando a seguir mostra todos os grupos de disponibilidade com o estado de integridade "Error" na instância de servidor Computer\Instance.

    Get-ChildItem SQLSERVER:\Sql\Computer\Instance\AvailabilityGroups `   
    | Test-SqlAvailabilityGroup | Where-Object { $_.HealthState -eq "Error" }  
    

    Test-SqlAvailabilityReplica
    Avalia a integridade de réplicas de disponibilidade avaliando as políticas do PBM (gerenciamento baseado em políticas) do SQL Server. Você deve ter as permissões CONNECT, VIEW SERVER STATE e VIEW ANY DEFINITION para executar esse cmdlet.

    Por exemplo, o comando a seguir avalia a integridade da réplica de disponibilidade denominada MyReplica no grupo de disponibilidade MyAg e gera um breve resumo.

    Test-SqlAvailabilityReplica `   
    -Path SQLSERVER:\Sql\Computer\Instance\AvailabilityGroups\MyAg\AvailabilityReplicas\MyReplica  
    

    Test-SqlDatabaseReplicaState
    Avalia a integridade de um banco de dados de disponibilidade em todas as réplicas de disponibilidade unidas avaliando as políticas do PBM (gerenciamento baseado em políticas) do SQL Server.

    Por exemplo, o comando a seguir avalia a integridade de todos os bancos de dados de disponibilidade no grupo de disponibilidade MyAg e gera um breve resumo para cada banco de dados.

    Get-ChildItem SQLSERVER:\Sql\Computer\Instance\AvailabilityGroups\MyAg\DatabaseReplicaStates `   
     | Test-SqlDatabaseReplicaState  
    

    Esses cmdlets aceitam as seguintes opções:

    Opção Descrição
    AllowUserPolicies Executa as políticas de usuário localizadas nas categorias de políticas AlwaysOn.
    InputObject Uma coleção de objetos que representam grupos de disponibilidade, réplicas de disponibilidade ou estados de bancos de dados de disponibilidade (dependendo de qual cmdlet que você está usando). O cmdlet computará a integridade dos objetos especificados.
    NoRefresh Quando esse parâmetro estiver definido, o cmdlet não atualizará manualmente os objetos especificados pelo parâmetro -Path ou -InputObject .
    Caminho O caminho para o grupo de disponibilidade, uma ou mais réplicas de disponibilidade ou o estado do cluster de réplicas do banco de dados de disponibilidade (dependendo do cmdlet que você está usando). Esse é um parâmetro opcional. Se não for especificado, o valor desse parâmetro será padronizado como o local de trabalho atual.
    ShowPolicyDetails Mostra o resultado de cada avaliação de política executada por esse cmdlet. O cmdlet produz um objeto por avaliação de política e esse objeto tem campos que descrevem os resultados da avaliação (se a política é aprovada ou não, o nome e a categoria da política e assim por diante).

    Por exemplo, o comando Test-SqlAvailabilityGroup a seguir especifica o parâmetro -ShowPolicyDetails para mostrar o resultado de cada avaliação de política executada por esse cmdlet para cada política PBM (gerenciamento baseada em políticas) que foi executada no grupo de disponibilidade denominado MyAg.

    Test-SqlAvailabilityGroup `   
    -Path SQLSERVER:\Sql\Computer\Instance\AvailabilityGroups\AgName `  
    -ShowPolicyDetails  
    
    

    Observação

    Para exibir a sintaxe de um cmdlet, use o cmdlet Get-Help no ambiente do SQL Server PowerShell. Para obter mais informações, consulte Get Help SQL Server PowerShell.

Para configurar e usar o provedor do SQL Server PowerShell

Conteúdo relacionado

Blogs da equipe de Always On do SQL Server – Monitorando a integridade de Always On com o PowerShell:

Consulte Também

Visão geral dos Grupos de Disponibilidade AlwaysOn (SQL Server)
Administração de um grupo de disponibilidade (SQL Server)
Monitoramento de grupos de disponibilidade (SQL Server)
Políticas AlwaysOn para problemas operacionais com grupos de disponibilidade AlwaysOn (SQL Server)