WebSurfer's Home

トップ > Blog 1   |   Login
Filter by APML

SQL Server Express 用 Profiler

by WebSurfer 8. August 2011 23:26

SQL Server を利用したアプリケーションの開発時に、アプリケーションから SQL Server にどのようなクエリが発行されているかを確認したいことがあると思います。

SQL Server Standard Edition 以上には SQL Server Profiler というツールが付属していて、GUI 環境で SQL Server のインスタンスで発生するイベントを収集して表示させることができるそうです。

しかし、残念ながら Express Edition には SQL Server Profiler は付属していません。

ググって調べてみると、AnjLab というロシアのソフト会社が無償で提供している SQL Server 2005/2008 Express Profiler というツールを見つけましたので使ってみました。

インストールは、上記のサイトからダウロードした zip ファイルに SqlExpressProfiler.msi という Windows インストーラーパッケージが含まれているので、それを実行するだけです。

設定方法が書いてあるドキュメントが見つからず、正しいかどうかイマイチ不安ですが、以下のように設定しました。なお、SQL Server は 2008 Express Edition で、開発マシンにローカルにインストールしてあります。認証方式は Windows 認証です。

(1) メニューバーで File --> New Trace を選択。表示される Trace Properties ダイアログの General タブで以下のように設定します。

SQL Profiler の Trace Properties ダイアログの General タブ設定

(2) Events タブの設定がよく分かりませんでしたが、開発中のアプリケーションから実行されるクエリの内容を確認したい場合は、SQLStmtStarting と SPStmtStarting にチェックを入れればよさそうです。

SQL Profiler の Trace Properties ダイアログの Events タブ設定

(3) Trace Properties ダイアログの Run ボタンをクリックするとダイアログが閉じて、トレース状況が表示されます。下の画像は、先の記事 SQL キャッシュ依存関係 で紹介したアプリケーションが、SQL Server にポーリングをかけているところです。

SQL Profiler のトレース状況

というわけで、アプリケーションが発行したクエリを確認するだけにしか使っていませんが、その目的であれば問題なく使えました。

Tags:

DevelopmentTools

About this blog

2010年5月にこのブログを立ち上げました。その後 ブログ2 を追加し、ここは ASP.NET 関係のトピックス、ブログ2はそれ以外のトピックスに分けました。

Calendar

<<  June 2021  >>
MoTuWeThFrSaSu
31123456
78910111213
14151617181920
21222324252627
2829301234
567891011

View posts in large calendar