Invoke-SqlAssessment

選択した SQL Server オブジェクトの SQL Assessment のベスト プラクティス チェックを実行し、その結果を返します。

構文

Invoke-SqlAssessment
      [-Check <Object[]>]
      [[-InputObject] <PSObject>]
      [-Configuration <PSObject>]
      [-MinSeverity <SeverityLevel>]
      [-FlattenOutput]
      [-ProgressAction <ActionPreference>]
      [<CommonParameters>]

説明

Invoke-SqlAssessment コマンドレットは、入力オブジェクトごとに評価を実行し、指定されたオブジェクトに適用する必要があるベスト プラクティスの推奨事項の一覧を返します。 指定された推奨事項に従うかどうかは、ユーザーが行う必要があります。 詳細については、SQL Assessment API の概要を参照してください。

このコマンドレットは、次の入力の種類を受け入れます。

  • Microsoft.SqlServer.Management.Smo.Server
  • Microsoft.SqlServer.Management.Smo.Database
  • Microsoft.SqlServer.Management.Smo.AvailabilityGroup
  • Microsoft.SqlServer.Management.Smo.FileGroup
  • Microsoft.SqlServer.Management.Smo.RegisteredServers.RegisteredServer
  • 上記の型の任意のオブジェクトへのパスを含む文字列
  • オブジェクトのコレクション

Get-SqlInstance や Get-SqlDatabase などの SqlServer コマンドレット、または Get-Item や Get-ChildItem などの基本的な PowerShell コマンドレットを使用して、入力オブジェクトを取得できます。 また、このコマンドレットは SQL Server PowerShell プロバイダーをサポートしているため、パスからオブジェクトを取得できます。 パスは明示的に渡すことができます。それ以外の場合は、現在のパスが使用されます。

選択したオブジェクトのチェックの可用性は、SQL Server のバージョン、プラットフォーム、およびオブジェクトの種類によって異なります。 また、tempdbmasterなどの特定のデータベースを対象とするチェックもあります。 さらに、パラメーター -MinSeverity と -Check を使用して、タグ、名前、重大度でチェックをフィルター処理できます。

Get-SqlAssessmentItem コマンドレットを使用して、特定の SQL Server オブジェクトに適用できるチェックの一覧 取得できます。

このコマンドレットは、入力オブジェクトに適用できるチェックのみを実行します。 たとえば、一覧で指定されている場合でも、SQL Server インスタンスまたは可用性グループに対してデータベース チェック -Check 実行されません。

カスタム構成は、-Configuration パラメーターを使用して適用できます。 カスタマイズの例 Githubで入手できます。

手記。 最初のパブリック プレビュー Invoke-SqlAssessment、CheckId プロパティと CheckName プロパティに Check の ID と DisplayName をそれぞれ含む AssessmentNote オブジェクトが返されました。 2 番目のパブリック プレビューでは、2 つのプロパティは、より多くのデータを提供する単一の Check プロパティに置き換えられました。 Invoke-SqlAssessmentによって返されたオブジェクト$noteと仮定すると、$noteではなく$note.Check.Id として check の ID にアクセスできます。CheckId、または$noteとしてのチェックの説明。Check.Description。 -FlattenOutput パラメーターを使用すると、CheckId と CheckName で前の形式の結果を取得できます。 このパラメーターは、Write-SqlTableDataなどの一部のコマンドレットとの互換性を維持するのにも役立ちます。 詳細については、例 12 から 14 を参照してください。

Invoke-SqlAssessment コマンドレットの出力は、特定の SQL Server オブジェクトごとに違反したベスト プラクティスの一覧です。 Description プロパティを使用して、ベスト プラクティスと Message プロパティを使用して、その解決方法を確認します。 また、すべてのチェック結果にはオンライン ドキュメントへのリンクが含まれています。これは、問題をよりよく把握するのに役立ちます。

Azure VM 上の SQL Server のサポート

SQL Assessment コマンドレットを使用すると、オンプレミスの SQL Server としてだけでなく、Azure VM 上の SQL Server に固有の規則 (仮想マシンの構成に関する情報を使用するもの) を使用して、Azure VM 上の SQL Server のインスタンスを評価できます。 たとえば、AzSqlVmSize ルールでは、Azure VM 上の SQL Server のインスタンスをホストする VM のサイズが推奨されていることを確認します。

このような規則を使用するには、Azure PowerShell モジュール Azure に接続し、Az.ResourceGraph モジュールがインストールされていることを確認します。

Azure VM インスタンス上の SQL Server に対して SQL Assessment を呼び出す前に、Azure PowerShell でサインインします。 例 16 は、対話型サインイン プロセスとサブスクリプションの選択を示しています。

手記。 PowerShell セッション間で永続化された Azure アカウント接続を使用できます。つまり、1 つのセッションで Connect-AzAccount を呼び出し、後でこのコマンドを省略できます。 ただし、現在のバージョンの SQL Assessment コマンドレットでは、Az.ResourceGraph モジュールを明示的にインポートする必要があります。Import-Module Az.ResourceGraph

例 1: ローカルの既定のインスタンスの評価を呼び出す

PS:> Get-SqlInstance -ServerInstance localhost | Invoke-SqlAssessment

   TargetPath : Server[@Name='LOCAL']

Sev. Message                                                            Check ID              Origin               
---- -------                                                            --------              ------               
Info Enable trace flag 834 to use large-page allocations to improve     TF834                 Microsoft Ruleset 0.1.202
     analytical and data warehousing workloads.                                                                         
Low  Detected deprecated or discontinued feature uses: String literals  DeprecatedFeatures    Microsoft Ruleset 0.1.202
     as column aliases, syscolumns, sysusers, SET FMTONLY ON, XP_API,                                                   
     Table hint without WITH, More than two-part column name. We                                                        
     recommend to replace them with features actual for SQL Server                                                      
     version 14.0.1000.                                                                                      
Medi Amount of single use plans in cache is high (100%). Consider       PlansUseRatio         Microsoft Ruleset 0.1.202
     enabling the Optimize for ad hoc workloads setting on heavy OLTP                                                   
     ad-hoc workloads to conserve resources.
...

この例では、現在のマシンで実行されている SQL Server の既定のインスタンスに関するすべてのベスト プラクティスの推奨事項を取得する方法を示します。

例 2: PSProvider コマンドレットを使用して評価を呼び出す

PS:> Get-Item SQLSERVER:\SQL\localhost\default | Invoke-SqlAssessment

   TargetPath : Server[@Name='LOCAL']

Sev. Message                                                            Check ID              Origin               
---- -------                                                            --------              ------               
Info Enable trace flag 834 to use large-page allocations to improve     TF834                 Microsoft Ruleset 0.1.202
     analytical and data warehousing workloads.                                                                         
Low  Detected deprecated or discontinued feature uses: String literals  DeprecatedFeatures    Microsoft Ruleset 0.1.202
     as column aliases, syscolumns, sysusers, SET FMTONLY ON, XP_API,                                                   
     Table hint without WITH, More than two-part column name. We                                                        
     recommend to replace them with features actual for SQL Server                                                      
     version 14.0.1000.                                                                                      
Medi Amount of single use plans in cache is high (100%). Consider       PlansUseRatio         Microsoft Ruleset 0.1.202
     enabling the Optimize for ad hoc workloads setting on heavy OLTP                                                   
     ad-hoc workloads to conserve resources.
...

この例では、SQL Server の既定のインスタンスに関するすべてのベスト プラクティスの推奨事項を取得する方法を示します。

例 3: PS プロバイダー パスを使用して評価を呼び出す

PS:> Invoke-SqlAssessment SQLSERVER:\SQL\localhost\default

TargetPath : Server[@Name='LOCAL']

Sev. Message                                                            Check ID              Origin               
---- -------                                                            --------              ------               
Info Enable trace flag 834 to use large-page allocations to improve     TF834                 Microsoft Ruleset 0.1.202
     analytical and data warehousing workloads.                                                                         
Low  Detected deprecated or discontinued feature uses: String literals  DeprecatedFeatures    Microsoft Ruleset 0.1.202
     as column aliases, syscolumns, sysusers, SET FMTONLY ON, XP_API,                                                   
     Table hint without WITH, More than two-part column name. We                                                        
     recommend to replace them with features actual for SQL Server                                                      
     version 14.0.1000.                                                                                      
Medi Amount of single use plans in cache is high (100%). Consider       PlansUseRatio         Microsoft Ruleset 0.1.202
     enabling the Optimize for ad hoc workloads setting on heavy OLTP                                                   
     ad-hoc workloads to conserve resources.
...

この例では、SQL Server の既定のインスタンスに関するすべてのベスト プラクティスの推奨事項を取得する方法を示します。

例 4: カスタム構成で評価を呼び出す

PS:> Get-SqlInstance -ServerInstance '(local)' | Invoke-SqlAssessment -Configuration C:\profileA.json, C:\profileB.json

TargetPath : Server[@Name='LOCAL']

Sev. Message                                                            Check ID              Origin               
---- -------                                                            --------              ------               
Low  Detected deprecated or discontinued feature uses: String literals  DeprecatedFeatures    Microsoft Ruleset 0.1.202
     as column aliases, syscolumns, sysusers, SET FMTONLY ON, XP_API,                                                   
     Table hint without WITH, More than two-part column name. We                                                        
     recommend to replace them with features actual for SQL Server                                                      
     version 14.0.1000.
Medi A custom rule violation detected.                                  CustomRuleA           Profile A 1.0
...

この例では、カスタム構成を適用して、変更されたベスト プラクティスの推奨事項のセットを取得する方法を示します。 カスタム構成については、JSON ファイルで説明します。 カスタムルールセット profileA.json と profileB.json いくつかのチェックを無効にし、いくつかの新しいルールセットを導入しました。 profileA.json からの新しいチェックの 1 つで、SQL Server インスタンスの現在の構成に関する問題が検出されました。 カスタマイズ 方法については、Github の SQL Assessment サンプル フォルダーを参照してください。

例 5: すべてのインスタンスの評価を呼び出す

PS:> dir SQLSERVER:\SQL\localhost | Invoke-SqlAssessment

    TargetPath : Server[@Name='LOCAL']

Sev. Message                                                            Check ID              Origin               
---- -------                                                            --------              ------               
Info Enable trace flag 834 to use large-page allocations to improve     TF834                 Microsoft Ruleset 0.1.202
     analytical and data warehousing workloads.                                                                         
Low  Detected deprecated or discontinued feature uses: String literals  DeprecatedFeatures    Microsoft Ruleset 0.1.202
     as column aliases, syscolumns, sysusers, SET FMTONLY ON, XP_API,                                                   
     Table hint without WITH, More than two-part column name. We                                                        
     recommend to replace them with features actual for SQL Server                                                      
     version 14.0.1000.                                                                                      
Medi Amount of single use plans in cache is high (100%). Consider       PlansUseRatio         Microsoft Ruleset 0.1.202
     enabling the Optimize for ad hoc workloads setting on heavy OLTP                                                   
     ad-hoc workloads to conserve resources.

    TargetPath : Server[@Name='LOCAL\INSTANCE1']

Sev. Message                                                            Check ID              Origin               
---- -------                                                            --------              ------               
Medi Product version 14.0.1000 is not the latest available. Keep your   LatestCU              Microsoft Ruleset 0.1.202
     your SQL Server up to date and install Service Packs and
     Cumulative Updates as they are released.
...

この例では Invoke-SqlAssessment コマンドレットがパイプライン経由で一連の SQL Server インスタンスを受け入れることを示しています。

例 6: フィルター処理されたセット ot tragets の評価を実行する

PS:> Get-SqlInstance -ServerInstance . | Where { $_.Name -Match '.*\d+' } | Invoke-SqlAssessment

    TargetPath : Server[@Name='LOCAL\INSTANCE1']

Sev. Message                                                            Check ID              Origin               
---- -------                                                            --------              ------               
Medi Product version 14.0.1000 is not the latest available. Keep your   LatestCU              Microsoft Ruleset 0.1.202
     your SQL Server up to date and install Service Packs and
     Cumulative Updates as they are released.
...

この例では Invoke-SqlAssessment コマンドレットがパイプライン経由で一連の SQL Server インスタンスを受け入れることを示しています。 セットは、標準の PowerShell Where-Object コマンドレットでフィルター処理されます。

例 7: 名前によるデータベースの評価の呼び出し

PS:> Get-SqlDatabase master -ServerInstance localhost | Invoke-SqlAssessment -Verbose
VERBOSE: Base ruleset version: 0.2.
VERBOSE: No recommendations for [master].

この例では、データベースの名前 受け入れる Invoke-SqlAssessment コマンドレットを示します。 この場合、問題は見つかりませんでした。

例 8: パスによるデータベースの評価の呼び出し

PS:> Invoke-SqlAssessment SQLSERVER:\SQL\localhost\default\Databases\master -Verbose
VERBOSE: Base ruleset version: 0.2.
VERBOSE: No recommendations for [master].

この例では、sql Server データベースへのパス 受け入れる Invoke-SqlAssessment コマンドレットを示します。

例 9: データベースの高い問題を検出する

PS:> cd SQLSERVER:\SQL\localhost\default\Databases\master
PS:> Invoke-SqlAssessment -MinSeverity High
VERBOSE: Base ruleset version: 0.2.
VERBOSE: No recommendations for [master].

この例では、現在の場所 評価する Invoke-SqlAssessment コマンドレットを示します。 高い問題のみが報告されます。

例 10: タグによって選択されたチェックを実行する

PS:> Get-SqlInstance -ServerInstance . | Invoke-SqlAssessment -Check Backup -Verbose
VERBOSE: Base ruleset version: 0.2.
VERBOSE: No recommendations for [LOCAL].

この例では Invoke-SqlAssessment コマンドレットで、ローカル サーバー上のすべての SQL Server インスタンスに対してすべてのバックアップ関連のチェックを実行しています。

例 11: 対話的に選択したチェックを実行する

PS:> $serverInstance = Get-SqlInstance -ServerInstance '(local)'
PS:> $checks = Get-SqlAssessmentItem $serverInstance | Select Name, Description | Out-GridView -PassThru
PS:> Invoke-SqlAssessment $serverInstance -Check $checks

    TargetPath : Server[@Name='LOCAL']

Sev. Message                                                            Check ID               Origin               
---- -------                                                            --------               ------               
Info Enable trace flag 834 to use large-page allocations to improve     TF834                  Microsoft Ruleset 0.1.202
     analytical and data warehousing workloads.                                                                     
Low  Detected deprecated or discontinued feature uses: String literals  DeprecatedFeatures     Microsoft Ruleset 0.1.202
     as column aliases, syscolumns, sysusers, SET FMTONLY ON, XP_API,                                                   
     Table hint without WITH, More than two-part column name. We                                                        
     recommend to replace them with features actual for SQL Server                                                      
     version 14.0.1000.

この例の 2 行目は、$serverInstanceのチェックを取得し、その一部を対話的に選択する方法を示しています。 選択した項目は配列変数に格納され、Invoke-SqlAssessment コマンドレットの入力として使用されます。 選択されたチェックのみが評価プロセス中に実行されます。

例 12: -FlattenOutput パラメーターの効果

PS> $inst = Get-SqlInstance -ServerInstance . 
PS> Invoke-SqlAssessment $inst -FlattenOutput | Select -First 1 | Get-Member


   TypeName: Microsoft.SqlServer.Management.Assessment.Cmdlets.AssessmentNoteFlat

Name           MemberType Definition                    
----           ---------- ----------                    
Equals         Method     bool Equals(System.Object obj)
GetHashCode    Method     int GetHashCode()             
GetType        Method     type GetType()                
ToString       Method     string ToString()             
CheckId        Property   string CheckId {get;}         
CheckName      Property   string CheckName {get;}       
HelpLink       Property   string HelpLink {get;}        
Message        Property   string Message {get;}         
RulesetName    Property   string RulesetName {get;}     
RulesetVersion Property   string RulesetVersion {get;}  
Severity       Property   string Severity {get;}        
TargetPath     Property   string TargetPath {get;}      
TargetType     Property   string TargetType {get;}      


PS> Invoke-SqlAssessment $inst | Select -First 1 | Get-Member


   TypeName: Microsoft.SqlServer.Management.Assessment.Cmdlets.AssessmentNote

Name        MemberType Definition                                                             
----        ---------- ----------                                                             
Equals      Method     bool Equals(System.Object obj)                                         
GetHashCode Method     int GetHashCode()                                                      
GetType     Method     type GetType()                                                         
ToString    Method     string ToString()                                                      
Check       Property   Microsoft.SqlServer.Management.Assessment.Checks.ICheck Check {get;}   
HelpLink    Property   string HelpLink {get;}                                                 
Message     Property   string Message {get;}                                                  
Severity    Property   Microsoft.SqlServer.Management.Assessment.SeverityLevel Severity {get;}
TargetPath  Property   string TargetPath {get;}                                               
TargetType  Property   string TargetType {get;}

PS> (Invoke-SqlAssessment $inst | Select -First 1).Check | Get-Member


   TypeName: Microsoft.SqlServer.Management.Assessment.Checks.Check

Name          MemberType Definition                                                                                                                                     
----          ---------- ----------                                                                                                                                     
Equals        Method     bool Equals(System.Object obj)                                                                                                                 
GetHashCode   Method     int GetHashCode()                                                                                                                              
GetType       Method     type GetType()                                                                                                                                 
ToString      Method     string ToString()                                                                                                                              
Condition     Property   Microsoft.SqlServer.Management.Assessment....
Description   Property   string Description {get;set;}                                                                                                                  
DisplayName   Property   string DisplayName {get;set;}                                                                                                                  
Enabled       Property   bool Enabled {get;set;}                                                                                                                        
HelpLink      Property   string HelpLink {get;set;}                                                                                                                     
Id            Property   string Id {get;set;}                                                                                                                           
Level         Property   Microsoft.SqlServer.Management.Assessment....
Message       Property   string Message {get;set;}                                                                                                                      
OriginName    Property   string OriginName {get;set;}                                                                                                                   
OriginVersion Property   version OriginVersion {get;set;}                                                                                                               
Parameters    Property   System.Collections.Generic.IDictionary[str...
Probes        Property   System.Collections.Generic.List[Microsoft....
Tags          Property   System.Collections.Generic.HashSet[string]...
Target        Property   Microsoft.SqlServer.Management.Assessment....

この例では、パラメーターの有無にかかわらず返されるオブジェクトの違い -FlattenOutput 示します。 このパラメーターは、膨大な複雑な Check オブジェクトを 2 つの文字列プロパティ CheckId と CheckName に置き換えます。 これはシリアル化の目的で役立ちます (次の例を参照)。

最初のコマンドでは、文字列型のすべてのプロパティを持つ単純なオブジェクトが表示されます。

2 番目のコマンドは、Check プロパティと Severity プロパティという 2 つの文字列以外のプロパティを持つ別のオブジェクトを示しています。

3 番目のコマンドは、Check プロパティを使用してアクセスできる豊富なデータ セットを示しています。

例 13: 失敗したチェックをもう一度実行する

PS> $inst = Get-SqlInstance -ServerInstance .
PS> $results = Invoke-SqlAssessment $inst
PS> $results

   TargetPath : Server[@Name='LOCAL']

Sev. Message                                                            Check ID              Origin               
---- -------                                                            --------              ------               
Info Enable trace flag 834 to use large-page allocations to improve     TF834                 Microsoft Ruleset 0.1.202
     analytical and data warehousing workloads.                                                                         
Low  Detected deprecated or discontinued feature uses: String literals  DeprecatedFeatures    Microsoft Ruleset 0.1.202
     as column aliases, syscolumns, sysusers, SET FMTONLY ON, XP_API,                                                   
     Table hint without WITH, More than two-part column name. We                                                        
     recommend to replace them with features actual for SQL Server                                                      
     version 14.0.1000.                                                                                      
Medi Amount of single use plans in cache is high (100%). Consider       PlansUseRatio         Microsoft Ruleset 0.1.202
     enabling the Optimize for ad hoc workloads setting on heavy OLTP                                                   
     ad-hoc workloads to conserve resources. 

PS> $results[1].Check.Description
This check detects deprecated or discontinued features used on target SQL Server instance. Deprecated features may be 
removed in a future release of SQL Server. Discontinued features have been removed from specific versions of SQL Server.

PS> Invoke-SqlAssessment $inst -Check $results[1].Check
   
   TargetPath : Server[@Name='LOCAL']

Sev. Message                                                            Check ID              Origin               
---- -------                                                            --------              ------                                                                                      
Low  Detected deprecated or discontinued feature uses: String literals  DeprecatedFeatures    Microsoft Ruleset 0.1.202
     as column aliases, syscolumns, sysusers, SET FMTONLY ON, XP_API,                                                   
     Table hint without WITH, More than two-part column name. We                                                        
     recommend to replace them with features actual for SQL Server                                                      
     version 14.0.1000. 

PS> Invoke-SqlAssessment $inst -Check ($results).Check

   TargetPath : Server[@Name='LOCAL']

Sev. Message                                                            Check ID              Origin               
---- -------                                                            --------              ------               
Info Enable trace flag 834 to use large-page allocations to improve     TF834                 Microsoft Ruleset 0.1.202
     analytical and data warehousing workloads.                                                                         
Low  Detected deprecated or discontinued feature uses: String literals  DeprecatedFeatures    Microsoft Ruleset 0.1.202
     as column aliases, syscolumns, sysusers, SET FMTONLY ON, XP_API,                                                   
     Table hint without WITH, More than two-part column name. We                                                        
     recommend to replace them with features actual for SQL Server                                                      
     version 14.0.1000.                                                                                      
Medi Amount of single use plans in cache is high (100%). Consider       PlansUseRatio         Microsoft Ruleset 0.1.202
     enabling the Optimize for ad hoc workloads setting on heavy OLTP                                                   
     ad-hoc workloads to conserve resources.

この例では、評価結果で返された Check を再利用する方法を示します。 前に AssessmentNotes を生成したチェックを再実行できます。

例 14: 評価結果をテーブルに格納する

PS:> $serverInstance = Get-SqlInstance -ServerInstance '(local)'
PS:> Invoke-SqlAssessment $serverInstance -FlattenOutput | 
     Write-SqlTableData -ServerInstance localhost -DatabaseName SqlAssessment -SchemaName Assessment -TableName Results -Force

この例の 2 行目は、-FlattenOutput パラメーターと Write-SqlTableData コマンドレットを使用して評価結果を SQL データベースに格納する方法を示しています。

例 15: 資格情報を明示的に指定する

PS> $cred = Get-Credential

PowerShell credential request
Enter your credentials.
User: Administrator
Password for user Administrator: ********

PS> $inst = Get-SqlInstance -ServerInstance 10.0.3.118 -Credential $cred
PS> Invoke-SqlAssessment $inst

   TargetPath : Server[@Name='ContosSQL']

Sev. Message                                                            Check ID              Origin               
---- -------                                                            --------              ------               
Medi Amount of single use plans in cache is high (100%). Consider       PlansUseRatio         Microsoft Ruleset 0.1.202
     enabling the Optimize for ad hoc workloads setting on heavy OLTP                                                   
     ad-hoc workloads to conserve resources

この例では、明示的に指定された資格情報を使用して SQL Assessment を呼び出す方法を示します。

例 16: Azure VM インスタンス上の SQL Server の評価を呼び出す

PS> Connect-AzAccount
PS> Set-Subscription My-Pay-As-You-Go
PS> $cred = Get-Credential

PowerShell credential request
Enter your credentials.
User: Administrator
Password for user Administrator: ********

PS> $inst = Get-SqlInstance -ServerInstance 10.0.3.118 -Credential $cred
PS> Invoke-SqlAssessment $inst

   TargetPath : Server[@Name='ContosoAzureSQL']

Sev. Message                                                            Check ID              Origin               
---- -------                                                            --------              ------               
Medi Amount of single use plans in cache is high (100%). Consider       PlansUseRatio         Microsoft Ruleset 0.1.202
     enabling the Optimize for ad hoc workloads setting on heavy OLTP                                                   
     ad-hoc workloads to conserve resources 
Info Use memory optimized virtual machine sizes for the best            AzSqlVmSize           Microsoft Ruleset 0.1.202 
     performance of SQL Server workloads

この例では、Azure VM インスタンス上の SQL Server の評価を呼び出す方法を示します。

アクティブな Azure サブスクリプション接続により、Azure VM 上の SQL Server に関連するチェック (この例では AzSqlVmSize) が有効になります。 最初の行は Azure アカウントに接続して、Azure Resource Graph からデータを取得します。 2 行目は省略可能です。

これらのチェックを実行するには、SQL Assessment に Az.ResourceGraph モジュールが必要です。

パラメーター

-Check

1 つ以上のチェック、ID の確認、またはタグ。

すべての check オブジェクトに対して、Invoke-SqlAssessment 、入力オブジェクトがサポートされているかどうかを確認します。

すべてのチェック ID に対して、Invoke-SqlAssessment 、入力オブジェクトをサポートしている場合は対応するチェックを実行します。

タグの場合、Invoke-SqlAssessment これらのタグのいずれかでチェックを実行します。

型:Object[]
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-Configuration

カスタム構成を含むファイルへのパスを指定します。 カスタマイズ ファイルは、指定した順序で既定の構成に適用されます。 スコープは、このコマンドレットの呼び出しのみに制限されます。

型:PSObject
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-FlattenOutput

このコマンドレットが、Microsoft.SqlServer.Management.Assessment.Cmdlets.AssessmentNoteではなく、Microsoft.SqlServer.Management.Assessment.Cmdlets.AssessmentNoteFlat 単純なオブジェクトを生成することを示します。

Invoke-SqlAssessment から返される Regular AssessmentNote には、Check などの他の便利な複雑なオブジェクトへの参照が含まれています (例 12 を参照)。 Check プロパティを使用すると、チェックの説明を取得したり、チェックを再利用したりできます (例 13 を参照)。 ただし、一部のコマンドレットは複雑なプロパティをサポートしていません。 たとえば、Write-SqlTableData では、AssessmentNote をデータベースに書き込もうとするときにエラーが発生します。 これを回避するには、-FlattenOutput パラメーターを使用して、Check プロパティを CheckId と CheckName の 2 つの単純な文字列に置き換えます (例 14 を参照)。

型:SwitchParameter
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-InputObject

SQL Server オブジェクト、またはそのようなオブジェクトへのパスを指定します。 コマンドレットは、このオブジェクトの評価を実行します。 このパラメーターを省略すると、現在の場所が入力オブジェクトとして使用されます。 現在の場所がサポートされている SQL Server オブジェクトでない場合、コマンドレットはエラーを通知します。

型:PSObject
Aliases:Target
配置:10
規定値:None
必須:False
パイプライン入力を受け取る:True
ワイルドカード文字を受け取る:False

-MinSeverity

チェックの最小重大度レベルを指定します。 たとえば、[低]、[中]、[情報] レベルのチェックは、[高] -MinSeverity 返されません。

型:SeverityLevel
Aliases:Severity
指定可能な値:Information, Low, Medium, High
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-ProgressAction

スクリプト、コマンドレット、またはプロバイダーによって生成された進行状況の更新 (Write-Progress コマンドレットによって生成された進行状況バーなど) に対する PowerShell の応答方法を決定します。 Write-Progress コマンドレットは、コマンドの状態を示す進行状況バーを作成します。

型:ActionPreference
Aliases:proga
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

入力

System.String[]

Microsoft.SqlServer.Management.Smo.SqlSmoObject[]

出力

Microsoft.SqlServer.Assessment.Cmdlets.AssessmentNote