カーソルについての理解メモ
参考資料
Oracle Database
SQLチューニング・ガイド
12c リリース2 (12.2)
カーソル共有によるReal-World Performanceの改善
プライベートSQL領域について
- プライベートSQL領域には、解析済のSQL文に関する情報と、処理に使用するその他のセッション固有の情報が保持される。
- サーバー・プロセスでSQLまたはPL/SQLのコードが実行される場合、プロセスではプライベートSQL領域を使用してバインド変数値、問合せ実行状態情報、問合せ実行作業領域が格納される。# Private SQL Area の中身って確認できないのかな。
- 文の各実行におけるプライベートSQL領域は共有されず、異なる値やデータが含まれている可能性がある。
カーソルについて
- カーソルは、特定のプライベートSQL領域の名前またはハンドル。
- カーソルには、バインド変数の値や結果セットなどのセッション固有の状態の情報が含まれている。
- Client のデータ領域は、PGA のプライベートSQL領域を指しているカーソル。
- PGA のプライベートSQL領域は、共有プール内にあるライブラリキャッシュ、またその中にある共有SQL領域内の解析済みSQL等を指すカーソル。