Test-SqlSmartAdmin
評估 SQL Server 原則式管理 (PBM) 原則,以測試智慧系統管理員的健康情況。
語法
ByPath (預設值)
Test-SqlSmartAdmin
[[-Path] <String[]>]
[-ShowPolicyDetails]
[-AllowUserPolicies]
[-NoRefresh]
[-AccessToken <PSObject>]
[-TrustServerCertificate]
[-HostNameInCertificate <String>]
[-Encrypt <String>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
ByObject
Test-SqlSmartAdmin
[-InputObject] <SmartAdmin[]>
[-ShowPolicyDetails]
[-AllowUserPolicies]
[-NoRefresh]
[-AccessToken <PSObject>]
[-TrustServerCertificate]
[-HostNameInCertificate <String>]
[-Encrypt <String>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Description
Test-SqlSmartAdmin Cmdlet 會評估 SQL Server 原則式管理 (PBM) 原則,以測試 SQL Server 實例的 Smart Admin 健康情況。
此 Cmdlet 支援下列作業模式以傳回 物件:
- 將 SQL Server 實例的路徑傳遞至 Path 參數。
- 將 Smo.Server 物件直接或透過管線傳遞至 InputObject 參數。
Module requirements: version 21+ on PowerShell 5.1; version 22+ on PowerShell 7.x.
範例
範例 1:測試 SQL Server Smart Admin 的狀態
PS C:\> cd SQLSERVER:\SQL\Computer\MyInstance
PS SQLSERVER:\SQL\Computer\MyInstance> Get-SqlSmartAdmin | Test-SqlSmartAdmin
第一個命令會將目錄變更為 SQL 實體 。 Computer\MyInstance
範例 2:評估 SQL Server Smart Admin 的測試結果
PS C:\> cd SQLSERVER:\SQL\Computer\MyInstance
PS SQLSERVER:\SQL\Computer\MyInstance> $PolicyResults = Get-SqlSmartAdmin | Test-SqlSmartAdmin
PS SQLSERVER:\SQL\Computer\MyInstance> $PolicyResults.PolicyEvaluationDetails | select Name, Category, Result, Expression
第一個命令會將目錄變更為 SQL 實例 Computer\MyInstance。
範例 3:輸出 SQL Server Smart Admin 的狀態
PS C:\> PS SQLSERVER:\SQL\COMPUTER\DEFAULT> (Get-SqlSmartAdmin).EnumHealthStatus()
number_of_storage_connectivity_errors: 0
number_of_sql_errors: 2
number_of_invalid_credential_errors: 0
number_of_other_errors : 0
number_of_corrupted_or_deleted_backups: 0
number_of_backup_loops: 2
number_of_retention_loops: 2
此命令會輸出本機 SQL Server Smart Admin 的狀態。
參數
-AccessToken
用來向 SQL Server 驗證的存取令牌,作為使用者/密碼或 Windows 驗證的替代方案。
例如,這可用來連線到 SQL Azure DB 或 SQL Azure Managed Instance 或 。 Service PrincipalManaged Identity
要使用的參數可以是字串,表示令牌或 PSAccessToken 物件,如執行 Get-AzAccessToken -ResourceUrl https://database.windows.net所傳回。
此參數是模組 v22 的新功能。
參數屬性
| 類型: | PSObject |
| 預設值: | None |
| 支援萬用字元: | False |
| 不要顯示: | False |
參數集
(All)
| Position: | Named |
| 必要: | False |
| 來自管線的值: | False |
| 來自管線按屬性名稱的值: | False |
| 來自剩餘引數的值: | False |
-AllowUserPolicies
指出此 Cmdlet 會執行 Smart Admin 警告和錯誤原則類別中找到的用戶原則。
參數屬性
| 類型: | SwitchParameter |
| 預設值: | None |
| 支援萬用字元: | False |
| 不要顯示: | False |
參數集
(All)
| Position: | Named |
| 必要: | False |
| 來自管線的值: | False |
| 來自管線按屬性名稱的值: | False |
| 來自剩餘引數的值: | False |
-Confirm
在執行 Cmdlet 之前,提示您進行確認。
參數屬性
| 類型: | SwitchParameter |
| 預設值: | False |
| 支援萬用字元: | False |
| 不要顯示: | False |
| 別名: | cf |
參數集
(All)
| Position: | Named |
| 必要: | False |
| 來自管線的值: | False |
| 來自管線按屬性名稱的值: | False |
| 來自剩餘引數的值: | False |
-Encrypt
線上到 SQL Server 時要使用的加密類型。
此值會對應至 Encrypt Microsoft.Data.SqlClient 驅動程式之 SqlConnection 物件上的 屬性 SqlConnectionEncryptOption 。
在模組的 v22 中,預設值為 Optional (為了與 v21 相容)。 在模組的 v23+ 中,預設值會是 「強制」,這可能會為現有的腳本建立重大變更。
此參數是模組 v22 的新功能。
參數屬性
| 類型: | String |
| 預設值: | None |
| 接受的值: | Mandatory, Optional, Strict |
| 支援萬用字元: | False |
| 不要顯示: | False |
參數集
(All)
| Position: | Named |
| 必要: | False |
| 來自管線的值: | False |
| 來自管線按屬性名稱的值: | False |
| 來自剩餘引數的值: | False |
-HostNameInCertificate
用於驗證 SQL Server TLS/SSL 憑證的主機名稱。 如果您的 SQL Server 實例已啟用強制加密,而且您想要使用主機名/shortname 連線到實例,則必須傳遞此參數。 如果省略此參數,則必須將完整功能變數名稱 (FQDN) 傳遞至 -ServerInstance 才能連線到啟用強制加密的 SQL Server 實例。
此參數是模組 v22 的新功能。
參數屬性
| 類型: | String |
| 預設值: | None |
| 支援萬用字元: | False |
| 不要顯示: | False |
參數集
(All)
| Position: | Named |
| 必要: | False |
| 來自管線的值: | False |
| 來自管線按屬性名稱的值: | False |
| 來自剩餘引數的值: | False |
-InputObject
指定 SmartAdmin 物件的陣列。 若要取得此物件,請使用 Get-SqlSmartAdmin Cmdlet。
參數屬性
| 類型: | SmartAdmin[] |
| 預設值: | None |
| 支援萬用字元: | False |
| 不要顯示: | False |
參數集
ByObject
| Position: | 1 |
| 必要: | True |
| 來自管線的值: | True |
| 來自管線按屬性名稱的值: | False |
| 來自剩餘引數的值: | False |
-NoRefresh
表示此 Cmdlet 不會手動重新整理 Path 或 InputObject 參數所指定的物件。
參數屬性
| 類型: | SwitchParameter |
| 預設值: | None |
| 支援萬用字元: | False |
| 不要顯示: | False |
參數集
(All)
| Position: | Named |
| 必要: | False |
| 來自管線的值: | False |
| 來自管線按屬性名稱的值: | False |
| 來自剩餘引數的值: | False |
-Path
指定 SQL Server 實體的路徑做為字串數位。 如果您未指定此參數的值,Cmdlet 會使用目前的工作位置。
參數屬性
| 類型: | String[] |
| 預設值: | None |
| 支援萬用字元: | False |
| 不要顯示: | False |
參數集
ByPath
| Position: | 1 |
| 必要: | False |
| 來自管線的值: | False |
| 來自管線按屬性名稱的值: | False |
| 來自剩餘引數的值: | False |
-ShowPolicyDetails
指出此 Cmdlet 會顯示原則的結果。 Cmdlet 會為每個原則評估輸出一個物件。 輸出包含評量的結果:例如原則的名稱、類別和健康情況。
參數屬性
| 類型: | SwitchParameter |
| 預設值: | None |
| 支援萬用字元: | False |
| 不要顯示: | False |
參數集
(All)
| Position: | Named |
| 必要: | False |
| 來自管線的值: | False |
| 來自管線按屬性名稱的值: | False |
| 來自剩餘引數的值: | False |
-TrustServerCertificate
指出通道是否會在略過憑證鏈結以驗證信任時加密。
在模組的 v22 中,預設值為 $true (為了與 v21 相容)。 在模組的 v23+ 中,預設值會是 『$false』,這可能會為現有的腳本建立重大變更。
此參數是模組 v22 的新功能。
參數屬性
| 類型: | SwitchParameter |
| 預設值: | None |
| 支援萬用字元: | False |
| 不要顯示: | False |
參數集
(All)
| Position: | Named |
| 必要: | False |
| 來自管線的值: | False |
| 來自管線按屬性名稱的值: | False |
| 來自剩餘引數的值: | False |
-WhatIf
顯示 Cmdlet 執行時會發生什麼事。 指令未執行。
參數屬性
| 類型: | SwitchParameter |
| 預設值: | False |
| 支援萬用字元: | False |
| 不要顯示: | False |
| 別名: | 無線 |
參數集
(All)
| Position: | Named |
| 必要: | False |
| 來自管線的值: | False |
| 來自管線按屬性名稱的值: | False |
| 來自剩餘引數的值: | False |
CommonParameters
此 Cmdlet 支援一般參數:-Debug、-ErrorAction、-ErrorVariable、-InformationAction、-InformationVariable、-OutBuffer、-OutVariable、-PipelineVariable、-ProgressAction、-Verbose、-WarningAction 和 -WarningVariable。 如需詳細資訊,請參閱 about_CommonParameters。
輸入
Microsoft.SqlServer.Management.Smo.SmartAdmin
輸出
Object
此 Cmdlet 會從原則的評估輸出結果。