Поделиться через


Test-SqlAvailabilityGroup

Оценивает работоспособность группы доступности.

Синтаксис

ByPath (по умолчанию)

Test-SqlAvailabilityGroup
    [[-Path] <String[]>]
    [-ShowPolicyDetails]
    [-AllowUserPolicies]
    [-NoRefresh]
    [-AccessToken <PSObject>]
    [-TrustServerCertificate]
    [-HostNameInCertificate <String>]
    [-Encrypt <String>]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

ByObject

Test-SqlAvailabilityGroup
    [-InputObject] <AvailabilityGroup[]>
    [-ShowPolicyDetails]
    [-AllowUserPolicies]
    [-NoRefresh]
    [-AccessToken <PSObject>]
    [-TrustServerCertificate]
    [-HostNameInCertificate <String>]
    [-Encrypt <String>]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

Описание

Командлет Test-SqlAvailabilityGroup оценивает работоспособность группы доступности. Этот командлет оценивает политики управления на основе политик SQL Server. Чтобы запустить этот командлет, необходимо иметь CONNECTVIEW SERVER STATEправа пользователя и VIEW ANY DEFINITION права пользователя.

Module requirements: version 21+ on PowerShell 5.1; version 22+ on PowerShell 7.x.

Примеры

Пример 1. Оценка работоспособности группы доступности

PS C:\> Test-SqlAvailabilityGroup -Path "SQLSERVER:\Sql\Server\InstanceName\AvailabilityGroups\MainAG"

Эта команда оценивает работоспособность группы доступности с именем MainAG. Команда возвращает сводку.

Пример 2. Оценка работоспособности всей группы доступности

PS C:\> Get-ChildItem "SQLSERVER:\Sql\Server\InstanceName\AvailabilityGroups" | Test-SqlAvailabilityGroup

Эта команда получает все группы доступности, имеющие реплики доступности в указанном расположении в SQLSERVER: поставщик. Команда передает их текущему командлету с помощью оператора конвейера. Этот командлет оценивает работоспособность каждой группы доступности.

Пример 3. Отображение результатов для каждой политики группы доступности

PS C:\> Test-SqlAvailabilityGroup -Path "SQLSERVER:\Sql\Server\InstanceName\AvailabilityGroups\MainAG" -ShowPolicyDetails

Эта команда оценивает работоспособность группы доступности с именем MainAG. Эта команда задает параметр ShowPolicyDetails. Таким образом, он отображает результаты оценки для каждой политики управления на основе политик, запущенной.

Пример 4. Отображение результатов для пользовательских политик группы доступности

PS C:\> Test-SqlAvailabilityGroup -Path "SQLSERVER:\Sql\Server\InstanceName\AvailabilityGroups\MainAG" -AllowUserPolicies

Эта команда оценивает работоспособность группы доступности с именем MainAG. Эта команда включает определяемые пользователем политики в этой оценке.

Пример 5. Получение групп с состоянием ошибки

PS C:\> Get-ChildItem "SQLSERVER:\Sql\Server\InstanceName\AvailabilityGroups" | Test-SqlAvailabilityGroup | Where-Object { $_.HealthState -eq "Error" }

Эта команда получает все группы доступности, имеющие реплики доступности в указанном расположении в SQLSERVER: поставщик. Команда передает их текущему командлету с помощью оператора конвейера. Этот командлет оценивает работоспособность каждой группы доступности. Команда передает эти результаты командлету Where-Object , который возвращает результаты на основе свойства HealthState .

Параметры

-AccessToken

Маркер доступа, используемый для проверки подлинности в SQL Server, в качестве альтернативы пользователю или паролю или проверке подлинности Windows.

Это можно использовать, например, для подключения SQL Azure DB и SQL Azure Managed Instance использования a Service Principal или a Managed Identity (см. ссылки в нижней части этой страницы).

В распространенных сценариях этот параметр получается примерно так (Get-AzAccessToken -ResourceUrl https://database.windows.net).Token (требуется модуль Az.Accounts)

Тип параметра может быть либо string (маркер чистого текста), либо SecureString (зашифрованный маркер, как возвращается более новой версией командлета Get-AzAccessToken.)

Свойства параметра

Тип:PSObject
Default value:None
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

(All)
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-AllowUserPolicies

Указывает, что этот командлет проверяет политики пользователей, найденные в категориях политик групп доступности AlwaysOn.

Свойства параметра

Тип:SwitchParameter
Default value:None
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

(All)
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-Confirm

Запрашивает подтверждение перед запуском cmdlet.

Свойства параметра

Тип:SwitchParameter
Default value:False
Поддерживаются подстановочные знаки:False
DontShow:False
Aliases:cf

Наборы параметров

(All)
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-Encrypt

Тип шифрования, используемый при подключении к SQL Server.

Это значение сопоставляется со Encrypt свойством SqlConnectionEncryptOption объекта SqlConnection драйвера Microsoft.Data.SqlClient.

В версии 22 модуля используется Optional значение по умолчанию (для совместимости с версией 21). В версии 23+ модуля значение по умолчанию будет "Обязательный", которое может создать критическое изменение для существующих скриптов.

Этот параметр является новым в версии 22 модуля.

Свойства параметра

Тип:String
Default value:None
Допустимые значения:Mandatory, Optional, Strict
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

(All)
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-HostNameInCertificate

Имя узла используется для проверки TLS/SSL-сертификата SQL Server. Этот параметр необходимо передать, если экземпляр SQL Server включен для принудительного шифрования и требуется подключиться к экземпляру с помощью имени узла или короткого имени. Если этот параметр опущен, передача полного доменного имени (FQDN) в -ServerInstance необходима для подключения к экземпляру SQL Server, включенного для принудительного шифрования.

Этот параметр является новым в версии 22 модуля.

Свойства параметра

Тип:String
Default value:None
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

(All)
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-InputObject

Задает массив группы доступности в качестве объектов AvailabilityGroup. Этот командлет оценивает работоспособность групп доступности, указанных этим параметром.

Свойства параметра

Тип:

AvailabilityGroup[]

Default value:None
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

ByObject
Position:1
Обязательно:True
Значение из конвейера:True
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-NoRefresh

Указывает, что не будет обновлять объекты, указанные параметром Path или InputObject .

Свойства параметра

Тип:SwitchParameter
Default value:None
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

(All)
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-Path

Указывает путь группы доступности, которую вычисляет этот командлет. Если этот параметр не указан, этот командлет использует текущее рабочее расположение.

Свойства параметра

Тип:

String[]

Default value:None
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

ByPath
Position:1
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-ShowPolicyDetails

Указывает, что этот командлет отображает результат каждой оценки политики, выполняемой ею. Командлет возвращает один объект на оценку политики. Каждый объект политики включает результаты оценки. Эти сведения включают, передается ли политика, имя политики и категория политики.

Свойства параметра

Тип:SwitchParameter
Default value:None
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

(All)
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-TrustServerCertificate

Указывает, будет ли канал зашифрован при обходе цепочки сертификатов для проверки доверия.

В версии 22 модуля используется $true значение по умолчанию (для совместимости с версией 21). В версии 23+ модуля значение по умолчанию будет иметь значение "$false", которое может создать критическое изменение для существующих скриптов.

Этот параметр является новым в версии 22 модуля.

Свойства параметра

Тип:SwitchParameter
Default value:None
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

(All)
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-WhatIf

Показывает, что произойдет, если командлет будет запущен. Командлет не запускается.

Свойства параметра

Тип:SwitchParameter
Default value:False
Поддерживаются подстановочные знаки:False
DontShow:False
Aliases:wi

Наборы параметров

(All)
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

CommonParameters

Этот командлет поддерживает общие параметры: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction и -WarningVariable. Дополнительные сведения см. в разделе about_CommonParameters.

Входные данные

Microsoft.SqlServer.Management.Smo.AvailabilityGroup