Test-SqlAvailabilityReplica
可用性レプリカの正常性を評価します。
構文
Test-SqlAvailabilityReplica
[-ShowPolicyDetails]
[-AllowUserPolicies]
[-NoRefresh]
[[-Path] <String[]>]
[-AccessToken <PSObject>]
[-TrustServerCertificate]
[-HostNameInCertificate <String>]
[-Encrypt <String>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Test-SqlAvailabilityReplica
[-ShowPolicyDetails]
[-AllowUserPolicies]
[-NoRefresh]
[-InputObject] <AvailabilityReplica[]>
[-AccessToken <PSObject>]
[-TrustServerCertificate]
[-HostNameInCertificate <String>]
[-Encrypt <String>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
説明
Test-SqlAvailabilityReplica コマンドレットは、SQL Server ポリシー ベースの管理 (PBM) ポリシーを評価することで、可用性レプリカの正常性を評価します。
このコマンドレットを実行するには、 CONNECT
、 VIEW SERVER STATE
、 VIEW ANY DEFINITION
のアクセス許可が必要です。
Module requirements: version 21+ on PowerShell 5.1; version 22+ on PowerShell 7.x.
例
例 1: 可用性レプリカの正常性を評価する
PS C:\> Test-SqlAvailabilityReplica -Path "SQLSERVER:\Sql\Computer\Instance\AvailabilityGroups\MainAg\AvailabilityReplicas\MainReplica"
このコマンドは、MainReplica
可用性グループ内の MainAg
という名前の可用性レプリカの正常性を評価し、簡単な概要を出力します。
例 2: 可用性グループ内のすべての可用性レプリカの正常性を評価する
PS C:\> Get-ChildItem "SQLSERVER:\Sql\Computer\Instance\AvailabilityGroups\MainAg\AvailabilityReplicas" | Test-SqlAvailabilityReplica
このコマンドは、 MainAg
という名前の可用性グループ内のすべての可用性レプリカの正常性を評価し、各レプリカの簡単な概要を出力します。
例 3: 各 PBM ポリシーの可用性レプリカの正常性を評価する
PS C:\> Test-SqlAvailabilityReplica -Path "SQLSERVER:\Sql\Computer\Instance\AvailabilityGroups\MainAg\AvailabilityReplicas\MainReplica" -ShowPolicyDetails
このコマンドは、MainReplica
可用性グループ内の MainAg
という名前の可用性レプリカの正常性を評価し、実行された各 PBM ポリシーの評価結果を出力します。
例 4: 可用性レプリカの正常性を評価し、ユーザー定義ポリシーを含める
PS C:\> Test-SqlAvailabilityReplica -Path "SQLSERVER:\Sql\Computer\Instance\AvailabilityGroups\MainAg\AvailabilityReplicas\MainReplica" -AllowUserPolicies
このコマンドは、MainReplica
可用性グループ内の MainAg
という名前の可用性レプリカの正常性を評価します。
この評価には、ユーザー定義ポリシーが含まれています。
例 5: エラー状態にあるすべての可用性レプリカを表示する
PS C:\> Get-ChildItem "SQLSERVER:\Sql\Computer\Instance\AvailabilityGroups\MainAg\AvailabilityReplicas" | Test-SqlAvailabilityReplica | Where-Object { $_.HealthState -eq "Error" }
このコマンドは、Error
可用性グループの正常性状態が MainAg
のすべての可用性レプリカを表示します。
パラメーター
-AccessToken
ユーザー/パスワードまたは Windows 認証の代わりに、SQL Server に対する認証に使用されるアクセス トークン。
これは、たとえば、SQL Azure DB
またはSQL Azure Managed Instance
を使用してService Principal
とManaged Identity
に接続するために使用できます (このページの下部にあるリファレンスを参照してください)。
一般的なシナリオでは、このパラメーターは (Get-AzAccessToken -ResourceUrl https://database.windows.net).Token
(Az.Accounts モジュールが必要) などを使用して取得されます。
パラメーターの型は、 string
(クリア テキスト トークン) または SecureString
(Get-AzAccessToken コマンドレットの新しいバージョンによって返される暗号化されたトークン) のいずれかです。
型: | PSObject |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-AllowUserPolicies
このコマンドレットは、Always On ポリシー カテゴリにあるユーザー ポリシーを実行することを示します。
型: | SwitchParameter |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-Confirm
コマンドレットを実行する前に確認を求めるメッセージが表示されます。
型: | SwitchParameter |
Aliases: | cf |
配置: | Named |
規定値: | False |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-Encrypt
SQL Server に接続するときに使用する暗号化の種類。
この値は、Microsoft.Data.SqlClient ドライバーの SqlConnection オブジェクトの Encrypt
プロパティ SqlConnectionEncryptOption
にマップされます。
モジュールの v22 では、既定値は Optional
です (v21 との互換性のため)。 モジュールの v23 以降では、既定値は "必須" になり、既存のスクリプトに重大な変更が生じる可能性があります。
このパラメーターは、モジュールの v22 の新機能です。
型: | String |
指定可能な値: | Mandatory, Optional, Strict |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-HostNameInCertificate
SQL Server TLS/SSL 証明書の検証に使われるホスト名。 SQL Server インスタンスで Force Encryption が有効になっていて、ホスト名/短縮名を使用してインスタンスに接続する場合は、このパラメーターを渡す必要があります。 このパラメーターを省略した場合、強制暗号化が有効になっている SQL Server インスタンスに接続するには、完全修飾ドメイン名 (FQDN) を -ServerInstance に渡す必要があります。
このパラメーターは、モジュールの v22 の新機能です。
型: | String |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-InputObject
評価する可用性レプリカの配列を指定します。
型: | AvailabilityReplica[] |
配置: | 1 |
規定値: | None |
必須: | True |
パイプライン入力を受け取る: | True |
ワイルドカード文字を受け取る: | False |
-NoRefresh
このコマンドレットは、 Path パラメーターまたは InputObject パラメーターで指定されたオブジェクトを手動で更新しないことを示します。
型: | SwitchParameter |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-Path
1 つ以上の可用性レプリカへのパスを指定します。 このパラメーターは省略可です。 指定しない場合は、現在の作業場所が使用されます。
型: | String[] |
配置: | 1 |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-ShowPolicyDetails
このコマンドレットによって実行された各ポリシー評価の結果が表示されることを示します。 このコマンドレットは、ポリシー評価ごとに 1 つのオブジェクトを出力します。 このオブジェクトには、評価の結果を記述するフィールドが含まれています。
型: | SwitchParameter |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-TrustServerCertificate
信頼を検証するために証明書チェーンのウォークをバイパスしながらチャネルを暗号化するかどうかを示します。
モジュールの v22 では、既定値は $true
です (v21 との互換性のため)。 モジュールの v23 以降では、既定値は "$false" になり、既存のスクリプトに重大な変更が生じる可能性があります。
このパラメーターは、モジュールの v22 の新機能です。
型: | SwitchParameter |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-WhatIf
コマンドレットを実行した場合の動作を示します。 コマンドレットは実行されません。
型: | SwitchParameter |
Aliases: | wi |
配置: | Named |
規定値: | False |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
入力
Microsoft.SqlServer.Management.Smo.AvailabilityReplica[]