Compartilhar via


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

Este tópico descreve como determinar a integridade operacional de um grupo de disponibilidade AlwaysOn usando uma política AlwaysOn no SQL Server Management Studio ou no PowerShell no SQL Server 2014. Para obter informações sobre o Gerenciamento Baseado em Política AlwaysOn, consulte Políticas AlwaysOn para problemas operacionais com grupos de disponibilidade AlwaysOn (SQL Server).

Importante

Para políticas AlwaysOn, os nomes de categoria são usados como IDs. Alterar o nome de uma categoria AlwaysOn interromperia sua funcionalidade de avaliação de integridade. Portanto, os nomes da categoria AlwaysOn nunca devem ser modificados.

Antes de começar

Segurança

Permissões

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

Utilizando 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ó AlwaysOn High Availability.

    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 AlwaysOn, consulte Usar o Painel AlwaysOn (SQL Server Management Studio).

Como usar o PowerShell

Use políticas AlwaysOn para monitorar o status de um grupo de disponibilidade

  1. Defina o padrão (cd) para 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. Utilize 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 encontradas nas categorias de política 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 for definido, o cmdlet não atualizará manualmente os objetos especificados pelo parâmetro -Path ou -InputObject.
    Path 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 a seguir Test-SqlAvailabilityGroup especifica o -ShowPolicyDetails parâmetro para mostrar o resultado de cada avaliação de política executada por esse cmdlet para cada política de PBM (gerenciamento baseado em política) executada no grupo de disponibilidade chamado MyAg.

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

    Observação

    Para exibir a sintaxe de um cmdlet, use o Get-Help cmdlet 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

A equipe AlwaysOn do SQL Server Blogs-Monitoring o AlwaysOn Health 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)