[アプリケーション・プロファイリング] モードを使用すると、デッドロックに関係する接続がグラフィックで表示されます。また、[接続のブロック] タブには、ブロックされた接続に関する追加情報も表示されます。
トレーシング・セッション中に作成された分析ファイルを開きます。
Sybase Central で、[アプリケーション・プロファイリング] - [分析ファイルを開くかトレーシング・データベースに接続] を選択します。
[トレーシング・データベース内] を選択します。
[開く] をクリックします。
[ID] タブをクリックし、[ユーザ ID] フィールドに DBA と入力し、[パスワード] フィールドに sql と入力します。
[データベース] タブをクリックし、[データベース・ファイル] フィールドで app_profiling - DBA を参照して選択します。
[OK] をクリックします。
デッドロックのグラフィック表示を参照します。
[アプリケーション・プロファイリングの詳細] ウィンドウ枠で、[ステータス] タブをクリックし、[ロギング・セッション ID] リストから最新の ID を選択します。
[アプリケーション・プロファイリングの詳細] ウィンドウ枠が表示されない場合は、[表示] - [アプリケーション・プロファイリングの詳細] を選択します。
[アプリケーション・プロファイリングの詳細] ウィンドウ枠の下部で、[デッドロック] タブをクリックします。最新のデッドロックが表示されます。別のデッドロックを参照するには、[デッドロック] リストをクリックします。
次の図は、UPDATE 文により、どのようにデッドロック状態が作成されたかを示しています。
デッドロックに関連する各接続は、次のフィールドが含まれるテーブルで表示されます。
接続名 このフィールドには、接続を開いたユーザ ID が表示されます。
SQL 文 このフィールドには、デッドロックに関係する実際の文が表示されます。この場合、Interactive SQL の各インスタンスから実行したプロシージャで検出された UPDATE 文が原因でデッドロックが発生しました。
所有接続 ID このフィールドには、現在の接続をブロックしている接続の ID が表示されます。
レコード ID このフィールドには、現在の接続がブロックされているローの ID が表示されます。
ロールバック操作のカウント このフィールドには、デッドロックの結果としてロールバックされる必要がある操作回数が表示されます。この場合、プロシージャには UPDATE 文しか含まれていないため、この数は 0 になります。
Copyright © 2009, iAnywhere Solutions, Inc. - SQL Anywhere 11.0.1 |