Switch-SqlAvailabilityGroup

Запускает отработку отказа группы доступности на дополнительный реплика.

Синтаксис

Switch-SqlAvailabilityGroup
      [-AllowDataLoss]
      [-Force]
      [[-Path] <String[]>]
      [-Script]
      [-AccessToken <PSObject>]
      [-TrustServerCertificate]
      [-HostNameInCertificate <String>]
      [-Encrypt <String>]
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]
Switch-SqlAvailabilityGroup
      [-AllowDataLoss]
      [-Force]
      [-InputObject] <AvailabilityGroup[]>
      [-Script]
      [-AccessToken <PSObject>]
      [-TrustServerCertificate]
      [-HostNameInCertificate <String>]
      [-Encrypt <String>]
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]

Описание

Командлет Switch-SqlAvailabilityGroup запускает отработку отказа группы доступности на указанную вторичную реплика. Выполните этот командлет на целевом вторичном реплика. После отработки отказа вторичная реплика становится основным реплика.

Примеры

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

PS C:\> Switch-SqlAvailabilityGroup -Path "SQLSERVER:\Sql\SecondaryServer\InstanceName\AvailabilityGroups\MainAG"

Эта команда выполняет отработку отказа группы MainAG доступности вручную на экземпляр сервера с именем SecondaryServer\InstanceName. Эта команда не допускает потерю данных. Выполните эту команду на экземпляре сервера, на котором размещена вторичная реплика для отработки отказа.

Пример 2. Принудительная отработка отказа группы доступности

PS C:\> Switch-SqlAvailabilityGroup -Path "SQLSERVER:\Sql\SecondaryServer\InstanceName\AvailabilityGroups\MainAG" -AllowDataLoss

Эта команда выполняет отработку отказа группы MainAG доступности вручную на экземпляр сервера с именем SecondaryServer\InstanceName. Команда задает параметр AllowDataLoss . Таким образом, отработка отказа может привести к потере данных, и команда запрашивает подтверждение. Укажите параметр Force , чтобы пропустить подтверждение.

Пример 3. Создание скрипта для отработки отказа группы доступности

PS C:\> Switch-SqlAvailabilityGroup -Path "SQLSERVER:\Sql\SecondaryServer\InstanceName\AvailabilityGroups\MainAG" -Script

Эта команда создает скрипт Transact-SQL, который выполняет отработку отказа группы MainAG доступности вручную на экземпляр сервера с именем SecondaryServer\InstanceName. Сценарий не допускает потери данных. Команда не вызывает отработку отказа.

Параметры

-AccessToken

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

Его можно использовать, например, для подключения к SQL Azure DB и SQL Azure Managed Instance с помощью Service Principal или Managed Identity.

Используемый параметр может быть либо строкой, представляющей маркер, либо объектом, PSAccessToken возвращаемым при выполнении команды Get-AzAccessToken -ResourceUrl https://database.windows.net.

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

Type:PSObject
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-AllowDataLoss

Указывает, что этот командлет запускает принудительную отработку отказа на целевой дополнительный реплика. Возможна потеря данных. Если не указать параметр Force или Script , командлет запросит подтверждение.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Confirm

Запрос подтверждения перед выполнением командлета.

Type:SwitchParameter
Aliases:cf
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Encrypt

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

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

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

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

Type:String
Accepted values:Mandatory, Optional, Strict
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Force

Принудительное выполнение команды без запроса на подтверждение пользователем. Этот командлет запрашивает подтверждение, только если указан параметр AllowDataLoss .

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-HostNameInCertificate

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

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

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-InputObject

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

Type:AvailabilityGroup[]
Position:1
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-Path

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

Type:String[]
Position:1
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Script

Указывает, что этот командлет возвращает скрипт Transact-SQL, который выполняет задачу, выполняемую этим командлетом.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-TrustServerCertificate

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

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

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

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-WhatIf

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

Type:SwitchParameter
Aliases:wi
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

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

Microsoft.SqlServer.Management.Smo.AvailabilityGroup[]

Вы можете передать группу доступности в этот командлет.