New-SqlAvailabilityGroup
可用性グループを作成します。
構文
New-SqlAvailabilityGroup
-AvailabilityReplica <AvailabilityReplica[]>
[-Database <String[]>]
[-AutomatedBackupPreference <AvailabilityGroupAutomatedBackupPreference>]
[-FailureConditionLevel <AvailabilityGroupFailureConditionLevel>]
[-HealthCheckTimeout <Int32>]
[-BasicAvailabilityGroup]
[-DatabaseHealthTrigger]
[-DtcSupportEnabled]
[-Name] <String>
[[-Path] <String>]
[-Script]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
New-SqlAvailabilityGroup
-AvailabilityReplica <AvailabilityReplica[]>
[-Database <String[]>]
[-AutomatedBackupPreference <AvailabilityGroupAutomatedBackupPreference>]
[-FailureConditionLevel <AvailabilityGroupFailureConditionLevel>]
[-HealthCheckTimeout <Int32>]
[-BasicAvailabilityGroup]
[-DatabaseHealthTrigger]
[-DtcSupportEnabled]
[-Name] <String>
[-InputObject] <Server>
[-Script]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
説明
New-SqlAvailabilityGroup コマンドレットは、AlwaysOn 可用性グループに可用性グループを作成します。 InputObject または Path パラメーターは、初期プライマリ レプリカをホストするサーバーを指定します。
例
例 1: 可用性グループを作成する
PS C:\> $PrimaryServer = Get-Item "SQLSERVER:\SQL\PrimaryServer\Instance22"
PS C:\> $SecondaryServer = Get-Item "SQLSERVER:\SQL\SecondaryServer\Instance22"
PS C:\> $PrimaryReplica = New-SqlAvailabilityReplica -Name "PrimaryServer\Instance22" -EndpointUrl "TCP://PrimaryServer.domain:5022" -FailoverMode "Automatic" -AvailabilityMode "SynchronousCommit" -AsTemplate -Version ($PrimaryServer.Version)
PS C:\> $SecondaryReplica = New-SqlAvailabilityReplica -Name "SecondaryServer\Instance22" -EndpointUrl "TCP://SecondaryServer.domain:5022" -FailoverMode "Automatic" -AvailabilityMode "SynchronousCommit" -AsTemplate -Version ($SecondaryServer.Version)
PS C:\> New-SqlAvailabilityGroup -InputObject $PrimaryServer -Name "MainAG" -AvailabilityReplica ($PrimaryReplica, $SecondaryReplica) -Database @("Database01","Database02")
最初のコマンドは、プライマリ サーバー上の SQL Server のインスタンスを取得し、それを $PrimaryServer 変数に格納します。
2 番目のコマンドは、セカンダリ サーバー上のSQL Serverのインスタンスを取得し、それを $SecondaryServer 変数に格納します。
3 番目のコマンドは、 New-SqlAvailabilityReplica コマンドレットを使用してプライマリ サーバー インスタンスを含むレプリカを作成し、それを $PrimaryReplica 変数に格納します。 コマンドは、$PrimaryServer の Version プロパティを使用して、サーバー インスタンスのバージョンを指定します。
4 番目のコマンドは、 New-SqlAvailabilityReplica を使用してセカンダリ サーバー インスタンスを含むレプリカを作成し、それを $SecondaryReplica 変数に格納します。 コマンドは、$SecondaryServer の Version プロパティを使用して、サーバー インスタンスのバージョンを指定します。
最後のコマンドでは、可用性グループが作成されます。 名前、プライマリ サーバー、レプリカ、その他の情報を指定します。
パラメーター
-AutomatedBackupPreference
可用性グループの自動バックアップ設定を指定します。 このパラメーターの有効値は、次のとおりです。
- プライマリ。 バックアップが常にプライマリ レプリカで実行されることを指定します。 このオプションでは、差分バックアップなど、セカンダリ レプリカでバックアップを実行するときに使用できない機能の使用がサポートされています。
- SecondaryOnly。 プライマリ レプリカでバックアップが実行されないように指定します。 プライマリ レプリカがオンラインの唯一のレプリカである場合、バックアップは実行されません。
- セカンダリ。 プライマリ レプリカがオンラインの唯一のレプリカでない限り、セカンダリ レプリカでバックアップが行われることを指定します。 その後、プライマリ レプリカでバックアップが実行されます。
- [なし] : バックアップを実行するレプリカを決定するときに、プライマリまたはセカンダリの状態が考慮されないことを指定します。 代わりに、バックアップの優先度とオンライン状態によって、バックアップを実行するレプリカが決まります。
型: | AvailabilityGroupAutomatedBackupPreference |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-AvailabilityReplica
このコマンドレットが可用性グループに含める可用性レプリカの配列を指定します。 AvailabilityReplica オブジェクトを取得するには、New-SqlAvailabilityReplica コマンドレットを使用します。 AsTemplate パラメーターを指定します。
型: | AvailabilityReplica[] |
配置: | Named |
規定値: | None |
必須: | True |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-BasicAvailabilityGroup
型: | SwitchParameter |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-Confirm
コマンドレットの実行前に確認を求めるメッセージが表示されます。
型: | SwitchParameter |
Aliases: | cf |
配置: | Named |
規定値: | False |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-Database
ローカルの読み取り/書き込みユーザー データベースの配列を指定します。 これらのデータベースは完全復旧モデルを使用する必要があり、AUTO_CLOSEを使用してはなりません。 これらのデータベースは他の可用性グループに属すことができず、データベース ミラーリング用に構成できません。 このパラメーターの値を指定する必要があります。
型: | String[] |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-DatabaseHealthTrigger
型: | SwitchParameter |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-DtcSupportEnabled
型: | SwitchParameter |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-FailureConditionLevel
可用性グループの自動フェールオーバー動作を指定します。 このパラメーターの有効値は、次のとおりです。
- OnServerDown。 SQL Server サービスが停止した場合は、フェールオーバーまたは再起動します。
- OnServerUnresponsive。 より低い値の条件が満たされた場合、さらにSQL Server サービスがクラスターに接続されていて HealthCheckTimeout しきい値を超えた場合、または現在プライマリ ロールにある可用性レプリカが失敗状態になっている場合は、フェールオーバーまたは再起動します。
- OnCriticalServerError。 より小さい値の条件が満たされた場合、さらに、メモリ不足状態、重大な書き込みアクセス違反、またはダンプが多すぎる内部重大なサーバー エラーが発生した場合は、フェールオーバーまたは再起動します。
- OnModerateServerError。 より低い値の条件が満たされた場合はフェールオーバーまたは再起動し、中程度のサーバー エラーが発生した場合は再起動します。これには、メモリ不足の永続的な状態が含まれます。
- OnAnyQualifiedFailureConditions。 より低い値の条件が満たされた場合はフェールオーバーまたは再起動します。さらに、エンジン ワーカー スレッドの枯渇や解決不可能なデッドロックが検出された状態を含む、条件を満たすエラー条件が発生した場合は再起動します。
型: | AvailabilityGroupFailureConditionLevel |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-HealthCheckTimeout
AlwaysOn 可用性グループが応答しないサーバーを異常と宣言するまでの時間の長さをミリ秒単位で指定します。
型: | Int32 |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-InputObject
このコマンドレットによって作成される可用性グループのプライマリ レプリカをホストするSQL Serverのインスタンスを指定します。
型: | Server |
配置: | 3 |
規定値: | None |
必須: | True |
パイプライン入力を受け取る: | True |
ワイルドカード文字を受け取る: | False |
-Name
このコマンドレットによって作成される可用性グループの名前を指定します。
型: | String |
配置: | 2 |
規定値: | None |
必須: | True |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-Path
このコマンドレットによって作成される可用性グループの初期プライマリ レプリカをホストするSQL Serverのインスタンスのパスを指定します。 このパラメーターを指定しない場合、このコマンドレットは現在の作業場所を使用します。 値を指定する場合、パスは現在存在している必要があります。
型: | String |
配置: | 3 |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-Script
このコマンドレットによって、このコマンドレットが実行するタスクを実行する Transact-SQL スクリプトが返されることを示します。
型: | SwitchParameter |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-WhatIf
コマンドレットの実行時に発生する内容を示します。 このコマンドレットは実行されません。
型: | SwitchParameter |
Aliases: | wi |
配置: | Named |
規定値: | False |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
入力
Microsoft.SqlServer.Management.Smo.Server
サーバー インスタンスをこのコマンドレットに渡すことができます。
出力
Microsoft.SqlServer.Management.Smo.AvailabilityGroup
このコマンドレットは、可用性グループを返します。