HOME >> Tips >> Microsoft SQL Server

SQL Server Profiler を使用して SQL Server で実行される SQL を監視する

2017/2/19
文書番号:20698

SQL Server に発行されたクエリをログに出力する
では、SQL Server に発行された SQL をログに出力して取得しました。

「問題が発生した際に発行されたSQLを取得したい」とか、「夜間処理で発行されたSQL」を取得したい場合にはいいと思いますが、「今すぐ取得したいけど、データベースの再起動は難しい」という場合には使えません。

SQL Server Profiler を使用して、今実行されたSQL を取得してみます。

【操作方法】

  1. スタートメニューから[Microsoft SQL Server 2014] - [パフォーマンス ツール] - [SQL Server 2014 Profiler] を起動します。

    ※異なるバージョンでも同じようにメニューにあると思います。

    クリックで拡大
  2. SQL Server Profiler が起動します。
    画面左上のある「新しいトレース」ボタンをクリックします。

    クリックで拡大
  3. 接続先のサーバーを指定します。
    ローカルのサーバーの場合は「.」だけで接続できます。

    クリックで拡大
  4. トレースのプロパティ画面が開きます。
    今回は実行されたSQL を取得したいので「使用するテンプレート」の項目で「TSQL」を選択して「実行」ボタンをクリックします。

    ※他のテンプレートを使用することで様々な情報をトレースすることができます。
     他のトレースについてはまた別の機会にします。

    クリックで拡大
  5. トレースを開始すると実行されたSQLが次々と一覧にあがってきます。
    「TextData」の項目を確認するとSQLを確認できます。

    クリックで拡大
  6. ここからはおまけですが、初期設定のフォントサイズが小さくてちょっと見づらい場合は「ツール」メニューから「オプション」をクリックします。

    クリックで拡大
  7. 「全般オプション」ダイアログが起動します。
    画面右上の「フォントの選択」ボタンをクリックしてフォント、フォントサイズなどを変更します。

    クリックで拡大
  8. 今回はフォントサイズのみ「8」から「10」に変更してみました。
    「OK」ボタンをクリックしてダイアログを閉じます。

    クリックで拡大
  9. フォントサイズが変更され、少し見やすくなりました。

    クリックで拡大

【参考情報】


[MSDN] How To 情報: SQL プロファイラの使用方法
https://msdn.microsoft.com/ja-jp/library/ms979207.aspx