Compartilhar via


Switch-SqlAvailabilityGroup

Inicia um failover de um grupo de disponibilidade para um réplica secundário.

Syntax

Switch-SqlAvailabilityGroup
      [-AllowDataLoss]
      [-Force]
      [[-Path] <String[]>]
      [-Script]
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]
Switch-SqlAvailabilityGroup
      [-AllowDataLoss]
      [-Force]
      [-InputObject] <AvailabilityGroup[]>
      [-Script]
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]

Description

O cmdlet Switch-SqlAvailabilityGroup inicia um failover de um grupo de disponibilidade para um réplica secundário especificado. Execute este cmdlet no réplica secundário de destino. Após o failover, o réplica secundário se torna o réplica primário.

Exemplos

Exemplo 1: fazer failover de um grupo de disponibilidade

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

Esse comando executa um failover manual do grupo de disponibilidade MainAG para a instância de servidor chamada SecondaryServer\InstanceName. Esse comando não permite a perda de dados. Execute esse comando na instância do servidor que hospeda a réplica secundária à qual fazer failover.

Exemplo 2: Forçar um grupo de disponibilidade a fazer failover

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

Esse comando executa um failover manual do grupo de disponibilidade MainAG para a instância de servidor chamada SecondaryServer\InstanceName. O comando especifica o parâmetro AllowDataLoss . Portanto, o failover tem o potencial de perda de dados e o comando solicita confirmação. Especifique o parâmetro Force para ignorar a confirmação.

Exemplo 3: criar um script para fazer failover de um grupo de disponibilidade

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

Esse comando cria um script Transact-SQL que executa um failover manual do grupo de disponibilidade MainAG para a instância de servidor chamada SecondaryServer\InstanceName. O script não permite a perda de dados. O comando não causa failover.

Parâmetros

-AllowDataLoss

Indica que esse cmdlet inicia um failover forçado para o réplica secundário de destino. É possível haver perda de dados. A menos que você especifique o parâmetro Force ou Script , o cmdlet solicitará confirmação.

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

-Confirm

Solicita sua confirmação antes de executar o cmdlet.

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

-Force

Força o comando a ser executado sem solicitar a confirmação do usuário. Esse cmdlet solicitará confirmação somente se você especificar o parâmetro AllowDataLoss .

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

-InputObject

Especifica o grupo de disponibilidade que esse cmdlet faz failover.

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

-Path

Especifica o caminho do grupo de disponibilidade que esse cmdlet faz failover. Se você não especificar esse parâmetro, esse cmdlet usará o local de trabalho atual.

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

-Script

Indica que esse cmdlet retorna um script Transact-SQL que executa a tarefa que esse cmdlet executa.

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

-WhatIf

Mostra o que aconteceria se o cmdlet fosse executado. O cmdlet não é executado.

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

Entradas

Microsoft.SqlServer.Management.Smo.AvailabilityGroup

Você pode passar um grupo de disponibilidade para esse cmdlet.