データベースはさまざまなユーザーのプログラムから参照されており、その数だけのセッションが張られています。データベースの管理業務をしていると、現在データベースが「だれの」「どのようなプログラム」からアクセスされているか、確認したい機会があると思います。
SI Object Browser for Oracleには、クライアントプログラムとデータベース間に張られているセッションについて確認する「セッション情報」機能があります。
セッション情報の使用方法
ツールバーの「セッション情報」ボタン (図1) を押します。すると、図2のような「セッション情報」画面が表示されます。
また「管理」メニューから「セッション情報」を選んで起動することもできます。
図 1 ツールバーの「セッション情報」ボタン
図 2 セッション情報画面
ここでは以下の情報を確認することができます。
セッションID |
セッションのID |
状態 |
ACTIVE … SQLを実行中の状態 INACTIVE … SQLを実行していない状態 |
インスタンス名 |
セッションが接続しているインスタンス |
ユーザー |
セッションのログインユーザー |
スキーマ |
セッションのログインスキーマ |
OSユーザー |
セッションを張っているOSユーザー |
マシン名 |
セッションを張っているOSユーザーの端末名 |
実行プログラム |
セッションを張っているプログラム名 |
(OSユーザー、マシン名はセキュリティの観点から伏せています)
またSI Object Browser自身のセッションは青文字で表示されるほか、ACTIVE状態のセッションは赤文字で表示されます。
次に、Oracleデータベースがバックグラウンドで処理を実行しているセッションを表示してみましょう。図3に四角で示す「バックグラウンドセッションを表示」ボタンを押します。
図3 バックグラウンドセッションを表示したセッション情報画面
バックグラウンドセッションを表示すると、ORACLE.EXEよりデータベースインスタンスへアクセスしていることがわかります。LGWRやMMON等、Oracleデータベースのバックグラウンドプログラムがセッションを張っていることも確認できます。
統計情報を見る
セッションを選択すると、画面下部の「統計情報」タブに、そのセッションに関する統計情報が表示されます(図4)。これはOracleデータベースが収集している情報で、データベースのパフォーマンス計測に活用することができます。
図4 セッションの統計情報
図 1のようにさまざまな統計情報を確認することができますが、ここでは一部を紹介いたします。
session contact time
- セッションの接続時間 (10ミリ秒単位)
parse count (total)
- SQL解析コールの合計数
session pga memory / session uga memory
- セッションのカレントPGA (プログラム・グローバル領域) / カレントUGA (ユーザー・グローバル領域) のサイズ (バイト単位)
bytes received via SQL*Net from client
- Oracle Net Serviceを介してクライアントから受信したデータ量 (バイト単位)
CLASS列に表示されているクラスの分類や、上記で説明する以外の統計情報の意味についてはOracle Databaseリファレンス ( https://docs.oracle.com/cd/E49329_01/server.121/b71292/toc.htm ) の「E 統計情報の説明」をご覧ください。
まとめ
SI Object Browserのセッション情報機能を用いれば、自身でSQLを操作することなく、セッションの確認に必要な情報を取得することができます。
セッション情報機能では、ここで紹介したほかにもさまざまな情報を参照することができますので、ぜひデータベース管理業務に活用いただければと思います。
- カテゴリ:
- キーワード: