Использование политик AlwaysOn для определения работоспособности группы доступности (SQL Server)
В этом разделе описывается, как определить работоспособность группы доступности AlwaysOn с помощью политики AlwaysOn в SQL Server Management Studio или PowerShell в SQL Server 2014 г. Сведения об управлении на основе политик AlwaysOn см. в статье Политики AlwaysOn для операционных проблем с группами доступности AlwaysOn (SQL Server).
Важно!
При работе с политиками AlwaysOn имена категорий используются в качестве идентификаторов. При изменении имени категории AlwaysOn ее функция оценки работоспособности будет нарушена. Поэтому имена категорий AlwaysOn изменять не следует никогда.
Перед началом
Безопасность
Разрешения
Требуются разрешения CONNECT, VIEW SERVER STATE и VIEW ANY DEFINITION.
Использование панели мониторинга AlwaysOn
Открытие панели мониторинга AlwaysOn
В обозревателе объектов подключитесь к экземпляру сервера, на котором размещена одна из реплик доступности. Чтобы просмотреть сведения обо всех репликах доступности в группе доступности, используйте экземпляр сервера, на котором размещена первичная реплика.
Щелкните имя сервера, чтобы развернуть дерево сервера.
Разверните узел Высокий уровень доступности AlwaysOn .
Щелкните правой кнопкой мыши узел Группы доступности или разверните этот узел и щелкните правой кнопкой мыши определенную группу доступности.
Выберите команду Показать панель мониторинга .
Сведения об использовании панели мониторинга AlwaysOn см. в статье Использование панели мониторинга AlwaysOn (SQL Server Management Studio).
Использование PowerShell
Использование политик AlwaysOn для просмотра работоспособности группы доступности
Перейдите в каталог (
cd
) экземпляра сервера, на котором размещена одна из реплик доступности. Чтобы просмотреть сведения обо всех репликах доступности в группе доступности, используйте экземпляр сервера, на котором размещена первичная реплика.Используйте следующие командлеты.
Test-SqlAvailabilityGroup
Оценивает работоспособность группы доступности при помощи оценки состояния политик управления SQL Server. Для выполнения этого командлета необходимо иметь разрешения CONNECT, VIEW SERVER STATE и VIEW ANY DEFINITION.Например, следующая команда показывает все группы доступности с состоянием работоспособности «Ошибка» в экземпляре сервера
Computer\Instance
.Get-ChildItem SQLSERVER:\Sql\Computer\Instance\AvailabilityGroups | Test-SqlAvailabilityGroup | Where-Object { $_.HealthState -eq "Error" }
Test-SqlAvailabilityReplica
Оценивает работоспособность реплик доступности при помощи оценки состояния политик управления SQL Server. Для выполнения этого командлета необходимо иметь разрешения CONNECT, VIEW SERVER STATE и VIEW ANY DEFINITION.Например, следующая команда оценивает работоспособность реплики доступности с именем
MyReplica
в группе доступностиMyAg
и выводит краткую сводку.Test-SqlAvailabilityReplica -Path SQLSERVER:\Sql\Computer\Instance\AvailabilityGroups\MyAg\AvailabilityReplicas\MyReplica
Test-SqlDatabaseReplicaState
Оценивает работоспособность базы данных доступности на всех присоединенных репликах доступности при помощи оценки состояния политик управления SQL Server.Например, следующая команда оценивает работоспособность всех баз данных доступности в группе доступности
MyAg
и выводит краткую сводку по каждой базе данных.Get-ChildItem SQLSERVER:\Sql\Computer\Instance\AvailabilityGroups\MyAg\DatabaseReplicaStates | Test-SqlDatabaseReplicaState
Эти командлеты принимают следующие параметры.
Параметр Описание AllowUserPolicies
Выполняет пользовательские политики из категорий политик AlwaysOn. InputObject
Коллекция объектов, представляющих состояния групп доступности, реплик доступности или базы данных доступности (в зависимости от того, какой используется командлет). Этот командлет вычисляет исправность указанных объектов. NoRefresh
Если задан этот параметр, командлет не обновляет вручную объекты, указанные в параметре -Path
или-InputObject
.Path
Путь к группе доступности, одной или нескольким репликам доступности или состоянию кластера реплики базы данных доступности (в зависимости от того, какой используется командлет). Этот параметр является необязательным. Если этот параметр не указан, его значение по умолчанию соответствует текущему рабочему расположению. ShowPolicyDetails
Показывает результат оценки каждой политики, выполненной этим командлетом. В результате работы командлета формируется по одному объекту для оценки каждой политики. Каждый такой объект имеет поле с описанием результатов оценки (было установлено соответствие политике или нет, имя и категория политики и так далее). Например, следующая команда
Test-SqlAvailabilityGroup
указывает параметр-ShowPolicyDetails
, чтобы показать результат вычисления, выполненного этим командлетом для управления на основе политик PBM в группе доступности с именемMyAg
.Test-SqlAvailabilityGroup -Path SQLSERVER:\Sql\Computer\Instance\AvailabilityGroups\AgName -ShowPolicyDetails
Примечание
Чтобы просмотреть синтаксис командлета, используйте
Get-Help
командлет в среде SQL Server PowerShell. Дополнительные сведения см. в разделе Get Help SQL Server PowerShell.
Настройка и использование поставщика SQL Server PowerShell
См. также
команда SQL Server AlwaysOn Blogs-Monitoring Работоспособность AlwaysOn с помощью PowerShell:
См. также:
Обзор групп доступности AlwaysOn (SQL Server)
Администрирование группы доступности (SQL Server)
Отслеживание групп доступности (SQL Server)
Политики AlwaysOn на случай проблем в работе с группами доступности AlwaysOn (SQL Server)