SQL Serverプロファイラを使用してデータベースのパフォーマンスの問題を追跡する
SQL Server Profilerは、Microsoft SQL Server 2012に付属する診断ツールです。SQL Serverデータベースに対して実行される特定のアクションを追跡するSQLトレースを作成できます。 SQLトレースは、 データベースの問題のトラブルシューティングやデータベースエンジンのパフォーマンスのチューニングに役立つ情報を提供します。 たとえば、管理者はトレースを使用して問合せのボトルネックを特定し、最適化を開発してデータベースのパフォーマンスを向上させることができます。
トレースの作成
SQL Server Profilerを使用してSQL Serverトレースを作成する手順は、次のとおりです。
- SQL Server Management Studioを開き、選択したSQL Serverインスタンスに接続します。 Windows認証を使用していない場合は、サーバー名と適切なログイン資格情報を入力します。
- SQL Server Management Studioを開いたら、[ ツール ]メニューの[ SQL Serverプロファイラ ]を選択します。 この管理セッションで他のSQL Serverツールを使用する予定がない場合は、Management Studioを経由せずに直接SQLプロファイラを起動することもできます。
- ログインの資格情報を入力するように求められたら、再度入力します。
- SQL Server Profilerは、新しいトレースを開始することを前提とし、[ トレースのプロパティ]ウィンドウを開きます。 ウィンドウは空白で、トレースの詳細を指定できます。
- トレースのわかりやすい名前を作成し、[ トレース名]テキストボックスに入力します。
- テンプレートの使用ドロップダウンメニューからトレースのテンプレートを選択します。 これにより、SQL Serverのライブラリに格納されている定義済みテンプレートの1つを使用してトレースを開始できます。
- トレースの結果を保存する場所を選択します。 ここには2つのオプションがあります:
- トレースをローカルハードドライブ上のファイルに保存するには、 [ファイルに保存]を選択します 。 チェックボックスをクリックするとポップアップする名前を付けて保存ウィンドウにファイル名と場所を入力します。 トレースがディスク使用に及ぼす影響を制限するために、最大ファイルサイズをMB単位で設定することもできます。
- トレースをSQL Serverデータベース内のテーブルに保存するには、[ テーブルに保存]を選択します 。 このオプションを選択すると、トレース結果を格納するデータベースに接続するように求められます。 トレースがデータベースに及ぼす影響を制限するために、最大トレースサイズ(数千のテーブル行数)を設定することもできます。
- イベント選択タブをクリックして、トレースで監視するイベントを確認します。 一部のイベントは、選択したテンプレートに基づいて自動的に選択されます。 この時点でこれらのデフォルト選択を変更し、[ すべてのイベントを表示]および[ すべての列を表示]チェックボックスをクリックして、追加のオプションを表示することができます。
- 実行ボタンをクリックしてトレースを開始します。 終了したら、[ ファイル ]メニューから[ トレースを停止 ]を選択します。
テンプレートの選択
トレースを開始するときには、トレースをSQL Serverのトレースライブラリにある任意のテンプレートに基づいて選択できます。 最も一般的に使用されるトレーステンプレートの3つは次のとおりです。
- 標準テンプレート - SQL Serverの接続、ストアドプロシージャ、Transact-SQLステートメントに関するさまざまな情報を収集します。
- チューニングテンプレート - データベースエンジンチューニングアドバイザで使用してSQL Serverのパフォーマンスをチューニングするための情報を収集します。
- TSQL_Replayテンプレート。各Transact-SQLステートメントに関する情報を収集して、今後アクティビティを再作成します。
注 :この記事では、SQL Server 2012のSQL Server Profilerについて説明します。以前のバージョンについては、「 SQL Server Profiler 2008でトレースを作成する方法」を参照してください。