Test-SqlDatabaseReplicaState
評估可用性資料庫的健康情況。
語法
Test-SqlDatabaseReplicaState
[-ShowPolicyDetails]
[-AllowUserPolicies]
[-NoRefresh]
[[-Path] <String[]>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Test-SqlDatabaseReplicaState
[-ShowPolicyDetails]
[-AllowUserPolicies]
[-NoRefresh]
[-InputObject] <DatabaseReplicaState[]>
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Description
Test-SqlDatabaseReplicaState Cmdlet 會評估所有聯結可用性複本上可用性資料庫的健康情況,方法是評估SQL Server原則式管理 (PBM) 原則。
您必須具有 CONNECT
、 VIEW SERVER STATE
和 VIEW ANY DEFINITION
許可權,才能執行此 Cmdlet。
Module requirements: version 21+ on PowerShell 5.1; version 22+ on PowerShell 7.x.
範例
範例 1:評估可用性資料庫的健康情況
PS C:\> $Path = "SQLSERVER:\Sql\Computer\Instance\AvailabilityGroups\MainAg\DatabaseReplicaStates\MainReplica.MainDatabase"
PS C:\> Test-SqlDatabaseReplicaState -Path $Path
此命令會評估可用性群組 MainAg
中可用性複 MainReplica
本上名為 MainDatabase
的可用性資料庫健康情況,並輸出簡短摘要。
範例 2:評估可用性群組中所有可用性資料庫的健康情況
PS C:\> Get-ChildItem "SQLSERVER:\Sql\Computer\Instance\AvailabilityGroups\MainAg\DatabaseReplicaStates" | Test-SqlDatabaseReplicaState
此命令會評估可用性群組中 MainAg
所有可用性資料庫的健康情況,並輸出每個資料庫的簡短摘要。
範例 3:評估可用性群組中所有可用性資料庫的健康情況,其中顯示 PBM 評估結果
PS C:\> Get-ChildItem "SQLSERVER:\Sql\Computer\Instance\AvailabilityGroups\MainAg\DatabaseReplicaStates" | Test-SqlDatabaseReplicaState -ShowPolicyDetails
此命令會評估可用性群組中 MainAg
所有可用性資料庫的健康情況,並輸出每個已執行之 PBM 原則的評估結果。
範例 4:評估可用性群組中所有可用性資料庫的健康情況,並包含使用者定義的原則
PS C:\> Get-ChildItem "SQLSERVER:\Sql\Computer\Instance\AvailabilityGroups\MainAg\DatabaseReplicaStates" | Test-SqlDatabaseReplicaState -AllowUserPolicies
此命令會評估可用性群組中 MainAg
所有可用性資料庫的健康情況。
這項評估會包含使用者定義的原則。
範例 5:顯示處於錯誤健康狀態的所有可用性資料庫
PS C:\> Get-ChildItem "SQLSERVER:\Sql\Computer\Instance\AvailabilityGroups\MainAg\DatabaseReplicaStates" | Test-SqlDatabaseReplicaState | Where-Object { $_.HealthState -eq "Error" }
此命令會顯示可用性群組中 MainAg
健康狀態 Error
為 的所有可用性資料庫。
參數
-AllowUserPolicies
指出此 Cmdlet 會執行Always On原則類別中找到的使用者原則。
類型: | SwitchParameter |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-Confirm
在執行 Cmdlet 前提示您確認。
類型: | SwitchParameter |
別名: | cf |
Position: | Named |
預設值: | False |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-InputObject
指定可用性資料庫狀態物件的陣列。 此 Cmdlet 會計算這些可用性資料庫的健全狀況。
類型: | DatabaseReplicaState[] |
Position: | 1 |
預設值: | None |
必要: | True |
接受管線輸入: | True |
接受萬用字元: | False |
-NoRefresh
表示這個 Cmdlet 不會手動重新整理 Path 或 InputObject 參數所指定的物件。
類型: | SwitchParameter |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-Path
指定可用性資料庫的一或多個資料庫複本叢集狀態的路徑。 這是選擇性參數。 如果未指定,則會使用目前工作位置的值。
類型: | String[] |
Position: | 1 |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-ShowPolicyDetails
指出這個 Cmdlet 會顯示每個原則評估執行的結果。 Cmdlet 會針對每個原則評估輸出一個物件,而評估的結果可在 物件的欄位中取得。
類型: | SwitchParameter |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-WhatIf
顯示執行 Cmdlet 後會發生的情況。 Cmdlet 並不會執行。
類型: | SwitchParameter |
別名: | wi |
Position: | Named |
預設值: | False |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
輸入
Microsoft.SqlServer.Management.Smo.DatabaseReplicaState[]