Oracle セッション情報を確認しよう

 2018.03.28  株式会社システムインテグレータ

データベースはさまざまなユーザーのプログラムから参照されており、その数だけのセッションが張られています。データベースの管理業務をしていると、現在データベースが「だれの」「どのようなプログラム」からアクセスされているか、確認したい機会があると思います。

SI Object Browser for Oracleには、クライアントプログラムとデータベース間に張られているセッションについて確認する「セッション情報」機能があります。

使用方法

ツールバーの「セッション情報」ボタン (図1) を押します。すると、図2のような「セッション情報」画面が表示されます。

また「管理」メニューから「セッション情報」を選んで起動することもできます。

session1.png

1 ツールバーの「セッション情報」ボタン

session2.png

図 2 セッション情報画面

ここでは以下の情報を確認することができます。

セッションID

セッションのID

状態

ACTIVE SQLを実行中の状態

INACTIVE SQLを実行していない状態

インスタンス名

セッションが接続しているインスタンス

ユーザー

セッションのログインユーザー

スキーマ

セッションのログインスキーマ

OSユーザー

セッションを張っているOSユーザー

マシン名

セッションを張っているOSユーザーの端末名

実行プログラム

セッションを張っているプログラム名

データベース開発に関するお役立ち資料

(OSユーザー、マシン名はセキュリティの観点から伏せています)

またSI Object Browser自身のセッションは青文字で表示されるほか、ACTIVE状態のセッションは赤文字で表示されます。 

次に、Oracleデータベースがバックグラウンドで処理を実行しているセッションを表示してみましょう。図3に四角で示す「バックグラウンドセッションを表示」ボタンを押します。

session3.png

図3 バックグラウンドセッションを表示したセッション情報画面

バックグラウンドセッションを表示するとORACLE.EXEよりデータベースインスタンスへアクセスしていることがわかります。LGWRMMON等、Oracleデータベースのバックグラウンドプログラムがセッションを張っていることも確認できます。

統計情報を見る

セッションを選択すると、画面下部の「統計情報」タブに、そのセッションに関する統計情報が表示されます(図4)。これはOracleデータベースが収集している情報で、データベースのパフォーマンス計測に活用することができます。

session4.png

図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 統計情報の説明」をご覧ください。 [RELATED_POSTS]

まとめ

SI Object Browserのセッション情報機能を用いれば、自身でSQLを操作することなく、セッションの確認に必要な情報を取得することができます。

セッション情報機能では、ここで紹介したほかにもさまざまな情報を参照することができますので、ぜひデータベース管理業務に活用いただければと思います。

いまさら聞けない Oracleの基本

RECENT POST「OBをトコトン極める」の最新記事


この記事が気に入ったらいいねしよう!