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。
範例
範例 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可用性群組中健康狀態為「錯誤」的所有可用性資料庫。
參數
-AllowUserPolicies
指出此 Cmdlet 會執行 AlwaysOn 原則類別中找到的用戶原則。
類型: | SwitchParameter |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-Confirm
在執行 Cmdlet 前提示您確認。
類型: | SwitchParameter |
別名: | cf |
Position: | Named |
預設值: | False |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-InputObject
指定可用性資料庫狀態物件的陣列。 此 Cmdlet 會計算這些可用性資料庫的健全狀況。
類型: | DatabaseReplicaState[] |
Position: | 2 |
預設值: | None |
必要: | True |
接受管線輸入: | True |
接受萬用字元: | False |
-NoRefresh
表示這個 Cmdlet 不會手動重新整理 Path 或 InputObject 參數所指定的物件。
類型: | SwitchParameter |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-Path
指定可用性資料庫的一或多個資料庫復本叢集狀態的路徑。 這是選擇性參數。 如果未指定,則會使用目前工作位置的值。
類型: | String[] |
Position: | 2 |
預設值: | 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