Test-SqlSmartAdmin

SQL Server 정책 기반 관리(PBM) 정책을 평가하여 스마트 관리 상태를 테스트합니다.

Syntax

Test-SqlSmartAdmin
    [-ShowPolicyDetails]
    [-AllowUserPolicies]
    [-NoRefresh]
    [[-Path] <String[]>]
    [-AccessToken <PSObject>]
    [-TrustServerCertificate]
    [-HostNameInCertificate <String>]
    [-Encrypt <String>]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]
Test-SqlSmartAdmin
    [-ShowPolicyDetails]
    [-AllowUserPolicies]
    [-NoRefresh]
    [-InputObject] <SmartAdmin[]>
    [-AccessToken <PSObject>]
    [-TrustServerCertificate]
    [-HostNameInCertificate <String>]
    [-Encrypt <String>]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

Description

Test-SqlSmartAdmin cmdlet은 SQL Server 정책 기반 관리(PBM) 정책을 평가하여 SQL Server instance 대한 스마트 관리 상태를 테스트합니다.

이 cmdlet은 개체를 반환하기 위해 다음과 같은 작업 모드를 지원합니다.

  • SQL Server instance 경로를 Path 매개 변수에 전달합니다.
  • 직접 또는 파이프라인을 통해 InputObject 매개 변수에 Smo.Server 개체를 전달합니다.

Module requirements: version 21+ on PowerShell 5.1; version 22+ on PowerShell 7.x.

예제

예제 1: SQL Server Smart 관리 상태 테스트

PS C:\> cd SQLSERVER:\SQL\Computer\MyInstance 
PS SQLSERVER:\SQL\Computer\MyInstance> Get-SqlSmartAdmin | Test-SqlSmartAdmin

첫 번째 명령은 디렉터리를 SQL instance Computer\MyInstance변경합니다.

예제 2: SQL Server Smart 관리 테스트 결과 평가

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 instance Computer\MyInstance로 변경합니다.

예제 3: SQL Server Smart 관리 상태 출력

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 관리 상태 출력합니다.

매개 변수

-AccessToken

사용자/암호 또는 Windows 인증 대신 SQL Server 인증하는 데 사용되는 액세스 토큰입니다.

예를 들어 또는 에 연결 SQL Azure DB 하고 를 사용하는 Service Principal 데 사용할 수 있습니다Managed IdentitySQL Azure Managed Instance.

사용할 매개 변수는 토큰을 나타내는 문자열이거나 PSAccessToken 를 실행 Get-AzAccessToken -ResourceUrl https://database.windows.net하여 반환된 개체일 수 있습니다.

이 매개 변수는 모듈의 v22에서 새로 추가되었습니다.

Type:PSObject
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-AllowUserPolicies

이 cmdlet이 스마트 관리 경고 및 오류 정책 범주에 있는 사용자 정책을 실행한다는 것을 나타냅니다.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Confirm

cmdlet을 실행하기 전에 확인을 요청합니다.

Type:SwitchParameter
Aliases:cf
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Encrypt

SQL Server 연결할 때 사용할 암호화 유형입니다.

이 값은 Encrypt Microsoft.Data.SqlClient 드라이버의 SqlConnection 개체에 있는 속성 SqlConnectionEncryptOption 에 매핑됩니다.

모듈의 v22에서 기본값은 (v21과의 호환성을 위해)입니다 Optional . 모듈의 v23 이상에서는 기본값이 '필수'이며 기존 스크립트에 대한 호환성이 손상되는 변경이 발생할 수 있습니다.

이 매개 변수는 모듈의 v22에서 새로 추가되었습니다.

Type:String
Accepted values:Mandatory, Optional, Strict
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-HostNameInCertificate

SQL Server TLS/SSL 인증서의 유효성을 검사할 때 사용할 호스트 이름입니다. 강제 암호화에 대해 SQL Server instance 사용하도록 설정되어 있고 hostname/shortname을 사용하여 instance 연결하려는 경우 이 매개 변수를 전달해야 합니다. 이 매개 변수를 생략하면 FQDN(정규화된 도메인 이름)을 -ServerInstance에 전달하여 강제 암호화를 사용하도록 설정된 SQL Server instance 연결해야 합니다.

이 매개 변수는 모듈의 v22에서 새로 추가되었습니다.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-InputObject

SmartAdmin 개체의 배열을 지정합니다. 이 개체를 얻으려면 Get-SqlSmartAdmin cmdlet을 사용합니다.

Type:SmartAdmin[]
Position:1
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-NoRefresh

이 cmdlet이 Path 또는 InputObject 매개 변수로 지정된 개체를 수동으로 새로 고치지 않음을 나타냅니다.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Path

SQL Server instance 경로를 문자열 배열로 지정합니다. 이 매개 변수의 값을 지정하지 않으면 cmdlet은 현재 작업 위치를 사용합니다.

Type:String[]
Position:1
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ShowPolicyDetails

이 cmdlet이 정책의 결과를 표시했음을 나타냅니다. 이 cmdlet은 정책 평가별로 개체를 하나씩 출력합니다. 출력에는 평가 결과(예: 정책 이름, 범주 및 상태)가 포함됩니다.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-TrustServerCertificate

신뢰의 유효성을 검사하기 위해 인증서 체인을 건너뛰는 동안 채널이 암호화되는지 여부를 나타냅니다.

모듈의 v22에서 기본값은 (v21과의 호환성을 위해)입니다 $true . 모듈의 v23 이상에서 기본값은 '$false'이며, 이로 인해 기존 스크립트에 대한 호환성이 손상되는 변경이 발생할 수 있습니다.

이 매개 변수는 모듈의 v22에서 새로 추가되었습니다.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-WhatIf

cmdlet을 실행할 경우 발생하는 일을 표시합니다. cmdlet은 실행되지 않습니다.

Type:SwitchParameter
Aliases:wi
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

입력

Microsoft.SqlServer.Management.Smo.SmartAdmin[]

출력

이 cmdlet은 정책 평가 결과를 출력합니다.