Switch-SqlAvailabilityGroup

セカンダリ レプリカへの可用性グループのフェールオーバーを開始します。

構文

Switch-SqlAvailabilityGroup
      [-AllowDataLoss]
      [-Force]
      [[-Path] <String[]>]
      [-Script]
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]
Switch-SqlAvailabilityGroup
      [-AllowDataLoss]
      [-Force]
      [-InputObject] <AvailabilityGroup[]>
      [-Script]
      [-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

このコマンドは、可用性グループ MainAG から SecondaryServer\InstanceName という名前のサーバー インスタンスへの手動フェールオーバーを実行する Transact-SQL スクリプトを作成します。 このスクリプトでは、データの損失は許可されません。 コマンドによってフェールオーバーが発生することはありません。

パラメーター

-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

-Force

ユーザーに確認せずに、直ちにコマンドを実行します。 このコマンドレットでは、 AllowDataLoss パラメーターを指定した場合にのみ確認を求められます。

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

-InputObject

このコマンドレットがフェールオーバーする可用性グループを指定します。

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

-Path

このコマンドレットがフェールオーバーする可用性グループのパスを指定します。 このパラメーターを指定しない場合、このコマンドレットは現在の作業場所を使用します。

Type:String[]
Position:2
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

-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

可用性グループをこのコマンドレットに渡すことができます。