Я думаю, что-то подобное может работать для вас:
if ( ( Invoke-Sqlcmd -Query "SELECT SERVERPROPERTY('IsHadrEnabled') AS IsHadrEnabled" -ServerInstance "localhost" ).IsHadrEnabled ) {
Write-Host "HADR is enabled."
}
else {
Write-Host "HADR is NOT enabled."
}
Ссылки:
Invoke-Sqlcmd
SERVERPROPERTY ( Transact- SQL) -> IsHadrEnabled
IsHadrEnabled
Применяется к: SQL Server 2012 (11.x) и более поздним версиям.
Группы доступности Always On включены на этом экземпляре сервера.
0 = Функция групп доступности Always On отключена.
1 = Функция групп доступности Always On включена.
NULL = Неверный ввод, ошибка или не применимо.
Базовый тип данных: int
Для создания и запуска реплик доступности на экземпляре SQL Сервер, Всегда По доступности группы должны быть включены на экземпляре сервера. Для получения дополнительной информации см. Включение и отключение групп доступности AlwaysOn (SQL Сервер).
Примечание. Свойство IsHadrEnabled относится только к группам доступности Always On. Это свойство сервера не влияет на другие функции высокой доступности или аварийного восстановления, такие как зеркальное отображение базы данных или доставка журналов.