SQL Server のインスタンスを登録する方法 (SQL Server ユーティリティ)

SQL Server のインスタンスを既存の SQL Server ユーティリティに登録し、SQL Server のマネージ インスタンスとしてそのパフォーマンスおよび構成を監視します。ユーティリティ コントロール ポイント (UCP) では、15 分ごとに、SQL Server のマネージ インスタンスから構成情報およびパフォーマンス情報を収集します。この情報は、UCP のユーティリティ管理データ ウェアハウス (UMDW) に格納されます。UMDW ファイル名は sysutility_mdw です。SQL Server のパフォーマンス データは、ポリシーと比較され、リソース使用時のボトルネックおよびリソースの統合の可能性を特定するのに役立ちます。

このリリースでは、UCP および SQL Server のすべてのマネージ インスタンスが次の要件を満たしている必要があります。

  • SQL Server は Version 10.50 以上である必要があります。

  • SQL Server のインスタンスの型はデータベース エンジンであることが必要です。

  • SQL Server ユーティリティは、単一の Windows ドメイン、または双方向の信頼関係を持つドメイン内で操作する必要があります。

  • SQL Server の UCP およびすべてのマネージ インスタンスの SQL Server サービス アカウントには、Active Directory 内のユーザーに対する読み取り権限が必要です。

このリリースでは、UCP が次の要件を満たしている必要があります。

  • SQL Server のエディションは、Data Center、Enterprise、Developer、または Evaluation である必要があります。

  • UCP は SQL Server の大文字と小文字が区別されるインスタンスでホストすることをお勧めします。

  • UCP コンピューター上のキャパシティ プランニングについては、次の推奨事項を考慮してください。

    • 一般的なシナリオでは、UCP の UMDW データベース (sysutility_mdw) で使用されるディスク領域は、SQL Server のマネージ インスタンス 1 つにつき年間約 2 GB です。この推定値は、マネージ インスタンスによって収集されるデータベース オブジェクトおよびシステム オブジェクトの数に応じて変化します。UMDW (sysutility_mdw) のディスク領域の増加率は、最初の 2 日間で最大になります。

    • 一般的なシナリオでは、UCP の msdb に使用されるディスク領域は、SQL Server のマネージ インスタンス 1 つにつき約 20 MB です。この推定値は、リソース使用率のポリシーと、マネージ インスタンスによって収集されるデータベース オブジェクトおよびシステム オブジェクトの数によって異なることに注意してください。一般に、ポリシー違反の数が増えたり、揮発性のリソースのために移動する期間が増えるたび、使用されるディスク領域が増加します。

    • UCP からマネージ インスタンスを削除しても、マネージ インスタンスのデータ保持期間の有効期限が切れるまでは、UCP のデータベースで使用されているディスク領域は縮小されません。

このリリースでは、SQL Server のすべてのマネージ インスタンスが次の要件を満たしている必要があります。

  • UCP をホストする SQL Server インスタンスが大文字と小文字を区別しない場合は、SQL Server のマネージ インスタンスでも大文字と小文字を区別しないことをお勧めします。

  • FILESTREAM データは、SQL Server ユーティリティの監視機能ではサポートされていません。

詳細については、「SQL Server の最大容量仕様」および「SQL Server 2008 R2 の各エディションがサポートする機能」を参照してください。

SQL Server ユーティリティの概念の詳細については、「SQL Server ユーティリティの概要」を参照してください。

重要な注意事項重要

SQL Server ユーティリティ コレクション セットは、SQL Server ユーティリティ以外のコレクション セットとサイド バイ サイドで実行できます。つまり、SQL Server のマネージ インスタンスは、SQL Server ユーティリティのメンバーであれば、他のコレクション セットによって監視できます。ただし、マネージ インスタンスのすべてのコレクション セットは、そのデータをユーティリティ管理データ ウェアハウスにアップロードすることに注意してください。詳細については、「SQL Server の同じインスタンスでユーティリティ コレクション セットとユーティリティ以外のコレクション セットを実行する場合の考慮事項」および「ユーティリティ コントロール ポイント データ ウェアハウスの構成 (SQL Server ユーティリティ)」を参照してください。

ウィザードの手順

次のセクションでは、ウィザードのワークフローの各ページについて詳しく説明します。リンクをクリックすると、ウィザードのページの詳細に移動できます。この操作を実行する PowerShell スクリプトの詳細については、PowerShell の例を参照してください。

  • インスタンスの登録ウィザードの概要

  • SQL Server インスタンスの指定

  • 接続ダイアログ

  • ユーティリティ コレクション セットのアカウント

  • SQL Server インスタンスの検証

  • インスタンス登録の概要

  • SQL Server インスタンスの登録

インスタンスの登録ウィザードの概要

このウィザードを起動するには、ユーティリティ エクスプローラーのツリーでユーティリティ コントロール ポイントを展開し、[マネージ インスタンス] ノードを右クリックして、[マネージ インスタンスの追加] をクリックします。

続行するには、[次へ] をクリックします。

SQL Server インスタンスの指定

接続ダイアログ ボックスで SQL Server のインスタンスを選択するには、[接続] をクリックします。ComputerName\InstanceName の形式でコンピューター名と SQL Server インスタンス名を指定します。詳細については、「[サーバーへの接続] (データベース エンジン)」を参照してください。

続行するには、[次へ] をクリックします。

接続ダイアログ

[サーバーへの接続] ダイアログ ボックスで、サーバーの種類、コンピューター名、および SQL Server インスタンス名の情報を確認します。詳細については、「[サーバーへの接続] (データベース エンジン)」を参照してください。

注意

接続が暗号化されている場合、暗号化された接続が使用されます。接続が暗号化されていない場合、SQL Server ユーティリティは暗号化された接続を使用して再接続します。

続行するには、[接続] をクリックします。

ユーティリティ コレクション セットのアカウント

SQL Server ユーティリティ コレクション セットを実行する Windows ドメイン アカウントを指定します。このアカウントは、SQL Server ユーティリティ コレクション セットの SQL Server エージェント プロキシ アカウントとして使用されます。また、既存の SQL Server エージェント サービス アカウントを使用することもできます。検証の要件を満たすには、次のガイドラインに従ってアカウントを指定します。

SQL Server エージェント サービス アカウントのオプションを指定する場合は、次のガイドラインに従います。

  • SQL Server エージェント サービス アカウントには、ビルトイン アカウント (LocalSystem、NetworkService、LocalService など) ではなく、Windows ドメイン アカウントを指定する必要があります。

続行するには、[次へ] をクリックします。

SQL Server インスタンスの検証

このリリースでは、SQL Server ユーティリティに登録する SQL Server インスタンスで、次の条件が満たされている必要があります。

条件

対処方法

指定された SQL Server インスタンスと UCP に対する管理者特権が必要です。

指定された SQL Server インスタンス、および UCP の管理者特権を持つアカウントでログオンします。

SQL Server のエディションでインスタンスの登録がサポートされている必要があります。

SQL Server のエディションは、Data Center、Developer、Enterprise、Standard、Workgroup、Web、または Evaluation である必要があります。

SQL Server UCP で TCP/IP が有効になっている必要があります。

SQL Server UCP で TCP/IP を有効にします。

別の SQL Server UCP で登録されている SQL Server インスタンスは使用できません。

指定した SQL Server のインスタンスが既存の SQL Server ユーティリティの一部として既に管理されている場合、そのインスタンスを別の UCP に登録することはできません。

既に UCP である SQL Server インスタンスは使用できません。

指定した SQL Server のインスタンスが、接続先の UCP とは別の UCP の場合、インスタンスをこの UCP に登録することはできません。

SQL Server インスタンスに SQL Server ユーティリティ コレクション セットがインストールされている必要があります。

SQL Server のインスタンスを再インストールします。

指定された SQL Server インスタンスのコレクション セットを停止する必要があります。

対処方法として、指定した SQL Server のインスタンスで動作しているコレクション セットを停止します。

指定した SQL Server インスタンスで SQL Server エージェント サービスを開始する必要があります。

指定した SQL Server インスタンスで SQL Server エージェント サービスを開始します。指定した SQL Server インスタンスが SQL Server フェールオーバー クラスターのインスタンスである場合は、SQL Server エージェント サービスを手動で開始するように構成します。それ例外の場合は、SQL Server エージェント サービスが自動的に開始されるように構成します。

UCP の SQL Server エージェント サービスを開始する必要があります。

UCP の SQL Server エージェント サービスを開始します。SQL Server UCP が SQL Server フェールオーバー クラスターのインスタンスである場合は、SQL Server エージェント サービスを手動で開始するように構成します。それ以外の場合は、SQL Server エージェント サービスが自動的に開始されるように構成します。

WMI が正しく構成されている必要があります。

WMI の構成をトラブルシューティングするには、「SQL Server ユーティリティのトラブルシューティング」を参照してください。

SQL Server エージェント プロキシ アカウントは、UCP の有効な Windows ドメイン アカウントである必要があります。

有効な Windows ドメイン アカウントを指定します。アカウントが有効であることを確認するには、Windows ドメイン アカウントを使用して UCP にログオンします。

プロキシ アカウント オプションを選択した場合、SQL Server エージェント プロキシ アカウントは、指定した SQL Server インスタンスの有効な Windows ドメイン アカウントである必要があります。

有効な Windows ドメイン アカウントを指定します。アカウントが有効であることを確認するには、Windows ドメイン アカウントを使用して、指定した SQL Server インスタンスにログオンします。

SQL Server エージェント サービス アカウントをビルトイン アカウント (Network Service など) にすることはできません。

アカウントを Windows ドメイン ユーザー アカウントに再割り当てします。アカウントが有効であることを確認するには、Windows ドメイン アカウントを使用して、指定した SQL Server のインスタンスにログオンします。

SQL Server エージェント サービス アカウントは、UCP の有効な Windows ドメイン アカウントである必要があります。

有効な Windows ドメイン アカウントを指定します。アカウントが有効であることを確認するには、Windows ドメイン アカウントを使用して UCP にログオンします。

サービス アカウント オプションを選択した場合、SQL Server エージェント サービス アカウントは、指定した SQL Server インスタンスの有効な Windows ドメイン アカウントである必要があります。

有効な Windows ドメイン アカウントを指定します。アカウントが有効であることを確認するには、Windows ドメイン アカウントを使用して、指定した SQL Server インスタンスにログオンします。

検証結果に失敗した条件が示されている場合は、支障をきたす問題を解決した後、[検証の再実行] をクリックして、コンピューターの構成を確認します。

検証レポートを保存するには、[レポートの保存] をクリックし、ファイルの場所を指定します。

続行するには、[次へ] をクリックします。

インスタンス登録の概要

概要ページには、SQL Server ユーティリティに追加する SQL Server インスタンスの情報が表示されます。

マネージ インスタンスの設定は次のとおりです。

  • SQL Server インスタンス名: ComputerName\InstanceName

  • ユーティリティ コレクション セットのアカウント: DomainName\UserName

続行するには、[次へ] をクリックします。

SQL Server インスタンスの登録

登録ページでは、次のように、処理の進行状況が表示されます。

  • インスタンスを登録する準備をしています。

  • 収集されたデータのキャッシュ ディレクトリを作成しています。

  • ユーティリティ コレクション セットを構成しています。

登録処理に関するレポートを保存するには、[レポートの保存] をクリックし、ファイルの場所を指定します。

ウィザードを完了するには、[完了] をクリックします。

注意

登録する SQL Server のインスタンスに SQL Server 認証を使用して接続し、UCP があるドメインとは異なる Active Directory ドメインに属するプロキシ アカウントを指定した場合、インスタンスの検証には成功しますが、次のエラー メッセージが表示されて登録処理に失敗します。

Transact-SQL ステートメントまたはバッチの実行中に例外が発生しました。(Microsoft.SqlServer.ConnectionInfo)

追加情報: Windows NT グループまたはユーザー '<DomainName\AccountName>' に関する情報を取得できませんでした。エラー コード 0x5。(Microsoft SQL Server、エラー: 15404)

このエラーのトラブルシューティングの詳細については、「SQL Server ユーティリティのトラブルシューティング」を参照してください。

注記注意

SQL Server のマネージ インスタンスの "ユーティリティ情報" コレクション セットのプロパティを変更しないでください。データ コレクションはユーティリティ エージェント ジョブで管理されるため、データ コレクションを手動で有効または無効にしないでください。

インスタンスの登録ウィザードが完了したら、SSMS のユーティリティ エクスプローラーのナビゲーション ウィンドウで、[マネージ インスタンス] ノードをクリックします。登録済みの SQL Server インスタンスは、ユーティリティ エクスプローラーのコンテンツ ウィンドウのリスト ビューに表示されます。

データ収集プロセスはすぐに開始されますが、ユーティリティ エクスプローラーのコンテンツ ウィンドウ内のダッシュボードとビューポイントに最初に表示されるまで最大 30 分かかる場合があります。データの収集は 15 分間隔で続行されます。データを更新するには、ユーティリティ エクスプローラーのナビゲーション ウィンドウで [マネージ インスタンス] ノードを右クリックして [更新] をクリックするか、リスト ビューで SQL Server インスタンス名を右クリックして [更新] をクリックします。

SQL Server ユーティリティからマネージ インスタンスを削除するには、ユーティリティ エクスプローラーのナビゲーション ウィンドウで [マネージ インスタンス] を選択してマネージ インスタンスのリスト ビューを設定し、ユーティリティ エクスプローラーのコンテンツ ウィンドウのリスト ビューで SQL Server インスタンス名を右クリックして、[マネージ インスタンスを削除] を選択します。

PowerShell を使用した SQL Server インスタンスの登録

次の例を使用して、SQL Server インスタンスを既存の SQL Server ユーティリティに登録します。

> $UtilityInstance = new-object -Type Microsoft.SqlServer.Management.Smo.Server "ComputerName\UCP-Name";
> $SqlStoreConnection = new-object -Type Microsoft.SqlServer.Management.Sdk.Sfc.SqlStoreConnection $UtilityInstance.ConnectionContext.SqlConnectionObject;
> $Utility = [Microsoft.SqlServer.Management.Utility.Utility]::Connect($SqlStoreConnection);
> $Instance = new-object -Type Microsoft.SqlServer.Management.Smo.Server "ComputerName\ManagedInstanceName";
> $InstanceConnection = new-object -Type Microsoft.SqlServer.Management.Sdk.Sfc.SqlStoreConnection $Instance.ConnectionContext.SqlConnectionObject;
> $ManagedInstance = $Utility.EnrollInstance($InstanceConnection, "ProxyAccount", "ProxyPassword");

> $UtilityInstance = new-object -Type Microsoft.SqlServer.Management.Smo.Server "ComputerName\UCP-Name";
> $SqlStoreConnection = new-object -Type Microsoft.SqlServer.Management.Sdk.Sfc.SqlStoreConnection $UtilityInstance.ConnectionContext.SqlConnectionObject;
> $Utility = [Microsoft.SqlServer.Management.Utility.Utility]::Connect($SqlStoreConnection);
> $Instance = new-object -Type Microsoft.SqlServer.Management.Smo.Server "ComputerName\ManagedInstanceName";
> $InstanceConnection = new-object -Type Microsoft.SqlServer.Management.Sdk.Sfc.SqlStoreConnection $Instance.ConnectionContext.SqlConnectionObject;
> $ManagedInstance = $Utility.EnrollInstance($InstanceConnection, "ProxyAccount", "ProxyPassword");