2009-05-29 8 views
1

私は平均的なSQLスキルを持つ.NET開発者です。私は「データベースが重い」ウェブアプリを開発中です。私は、プロファイラを使用してクエリとprocsをデバッグしています。このツールを使用してクエリ/プロシージャのパフォーマンスを調べる方法はありますか?SQLプロファイラを使用する最良の方法は何ですか

どのようにSQLプロファイラを最大限に活用できますか?

私はそれが作業データベース・システムの種類に依存すると言うあたり、高速のルールがそこにはハードではないとSQL Server 2008の

答えて

2

を使用しています。

SQL Serverのパフォーマンスチューニングの一般的な出発点として、実際には非常に便利な次の参照があります。これには、さまざまな考慮事項と指示が含まれています。あなたは私だけの行を削除、追加の支援が必要な場合は

http://www.brentozar.com/sql-server-performance-tuning/

はまた

http://vyaskn.tripod.com/analyzing_profiler_output.htm

を「SQL Serverプロファイラを使用してパフォーマンスの問題の識別」を、以下の記事を見てみましょう。

+0

リンクをありがとうございました – Developer

+0

@Nick:歓迎します –

1

私はsql serer 2008に精通していませんが、SQL Server 2005では最善の策は「表示実行プラン」機能です。私はあなたの質問のどの部分が最も時間を費やしているのかをお知らせします。通常、索引を追加すると非常に役立ちます。このツールは、最も必要な場所を特定するのに役立ちます。

+0

真実ですが、実行中のクエリ/バッチを特定する必要がありますnceから始める。そして、推測よりも測定する方が良い。これはProfilerが便利な場所で、サーバーに接続し、任意の時間より長く持続するクエリ(5秒で開始)に対してのみフィルタをかけ、10分間監視してから結果を集計します。一番上のクエリは、おそらく開始する必要があります。まず、その計画を実際に見ます。もちろん、走行距離は異なる場合があります。 –

0

そのすばらしい強力なツールです。しかし、慎重にして次のことをしないでください。

1)すべてをキャプチャしない1つのイベント/オブジェクトを何も見つけることができない場合は、app/user /データベース。

2)は、生産マシン上でプロファイラを実行しないでください。

3)本番データベース上のトレース情報を保存しないでください。本番ファイルとは別に保存されたファイルに保存します。