Get-SqlInstance

ターゲット コンピューターに存在する SQL Server の各インスタンスの SQL Instance オブジェクトを取得します。

構文

Get-SqlInstance
   [[-Path] <String[]>]
   [-Script]
   [-AccessToken <PSObject>]
   [-TrustServerCertificate]
   [-HostNameInCertificate <String>]
   [-Encrypt <String>]
   [-ProgressAction <ActionPreference>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
Get-SqlInstance
   [[-ServerInstance] <String[]>]
   [-Credential <PSCredential>]
   [-ConnectionTimeout <Int32>]
   [-Script]
   [-AccessToken <PSObject>]
   [-TrustServerCertificate]
   [-HostNameInCertificate <String>]
   [-Encrypt <String>]
   [-ProgressAction <ActionPreference>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
Get-SqlInstance
   [-InputObject] <Server[]>
   [-Script]
   [-AccessToken <PSObject>]
   [-TrustServerCertificate]
   [-HostNameInCertificate <String>]
   [-Encrypt <String>]
   [-ProgressAction <ActionPreference>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]

説明

Get-SqlInstance コマンドレットは、ターゲット コンピューターに存在する SQL Server の各インスタンスの SQL インスタンス オブジェクトを取得します。 SQL Server のインスタンスの名前が指定されている場合、コマンドレットは SQL Server のこの特定のインスタンスのみを取得します。

例 1: コンピューター上の SQL Server インスタンスを取得する

PS C:\> Get-SqlInstance -Credential -ServerInstance "Computer002\InstanceName"

このコマンドは、Computer002 という名前のコンピューター上の InstanceName という名前の SQL Server インスタンスを取得します。

例 2: 複数のコンピューター上の SQL Server のインスタンスを取得する

PS C:\Users\matteot> @('Server1', 'Server2', 'Server3') | % { Get-SqlInstance -ServerInstance $_}

Instance Name                   Version    ProductLevel UpdateLevel
-------------                   -------    ------------ -----------
Server1                         11.0.6607  SP3          CU10
Server2                         12.0.5600  SP2          CU14
Server3                         13.0.1742  RTM          n/a

このコマンドは、3 台の差分コンピューターで実行されている SQL Server のすべてのインスタンスを取得します。 出力は、バージョン、ProductLevel、および ProductUpdateLevel (別名および省略形は "UpdateLevel") が表示されるように書式設定されていることに注意してください(使用可能な場合)。

パラメーター

-AccessToken

ユーザー/パスワードまたは Windows 認証の代わりに、SQL Server に対する認証に使用されるアクセス トークン。

これは、たとえば、Service Principal または Managed Identityを使用して SQL Azure DBSQL Azure Managed Instance に接続するために使用できます。

使用するパラメーターには、トークンを表す文字列、または Get-AzAccessToken -ResourceUrl https://database.windows.netを実行して返される PSAccessToken オブジェクトを指定できます。

このパラメーターは、モジュールの v22 の新機能です。

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

-Confirm

コマンドレットを実行する前に確認を求めるメッセージが表示されます。

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

-ConnectionTimeout

タイムアウトエラーが発生するまでのサーバー接続を待機する秒数を指定します。 タイムアウト値は、0 から 65534 までの整数である必要があります。 0 を指定した場合、接続試行はタイムアウトになりません。

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

-Credential

SQL Server への接続の PSCredential オブジェクトを指定します。 資格情報オブジェクトを取得するには、Get-Credential コマンドレットを使用します。 詳細については、「Get-Credential」Get-Help 入力します。

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

-Encrypt

SQL Server に接続するときに使用する暗号化の種類。

この値は、Microsoft.Data.SqlClient ドライバーの SqlConnection オブジェクトの Encrypt プロパティ SqlConnectionEncryptOption にマップされます。

モジュールの v22 では、既定値は Optional です (v21 との互換性のため)。 モジュールの v23 以降では、既定値は "必須" になり、既存のスクリプトに重大な変更が生じる可能性があります。

このパラメーターは、モジュールの v22 の新機能です。

型:String
指定可能な値:Mandatory, Optional, Strict
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-HostNameInCertificate

SQL Server TLS/SSL 証明書の検証に使用するホスト名。 SQL Server インスタンスで Force Encryption が有効になっていて、ホスト名/短縮名を使用してインスタンスに接続する場合は、このパラメーターを渡す必要があります。 このパラメーターを省略した場合、強制暗号化が有効になっている SQL Server インスタンスに接続するには、完全修飾ドメイン名 (FQDN) を -ServerInstance に渡す必要があります。 SQL Server インスタンスで Force Encryption が有効になっていて、ホスト名/短縮名を使用してインスタンスに接続する場合は、このパラメーターを渡す必要があります。 このパラメーターを省略した場合、強制暗号化が有効になっている SQL Server インスタンスに接続するには、完全修飾ドメイン名 (FQDN) を -ServerInstance に渡す必要があります。

このパラメーターは、モジュールの v22 の新機能です。

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

-InputObject

このコマンドレットが動作する SQL Server を表す SQL Server 管理オブジェクト (SMO) オブジェクトを指定します。

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

-Path

このコマンドレットが操作を実行する SQL Server のパスを指定します。 既定値は現在の作業ディレクトリです。

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

-ProgressAction

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

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

-Script

このコマンドレットは、このコマンドレットが実行するタスクを実行する Transact-SQL スクリプトを返します。

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

-ServerInstance

SQL Server のインスタンスの名前を指定します。 既定のインスタンスには、コンピューター名を指定します。 名前付きインスタンスの場合は、ComputerName\InstanceName という形式を使用します。

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

-TrustServerCertificate

信頼を検証するために証明書チェーンのウォークをバイパスしながらチャネルを暗号化するかどうかを示します。

モジュールの v22 では、既定値は $true です (v21 との互換性のため)。 モジュールの v23 以降では、既定値は "$false" になり、既存のスクリプトに重大な変更が生じる可能性があります。

このパラメーターは、モジュールの v22 の新機能です。

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

-WhatIf

コマンドレットを実行した場合の動作を示します。 コマンドレットは実行されません。

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

入力

System.String[]