Oracle Server Process(10.2)
サーバープロセス一覧表示 V$BGPROCESS

現在、稼動中のプロセス一覧を表示する例となる。

EDU(SYS)>select name , description from v$bgprocess where paddr <> '00';

NAME  DESCRIPTION
----- ----------------------------------------------------------------
PMON  process cleanup
PSP0  process spawner 0
MMAN  Memory Manager
DBW0  db writer process 0
ARC0  Archival Process 0
ARC1  Archival Process 1
ARC2  Archival Process 2
LGWR  Redo etc.
CKPT  checkpoint
SMON  System Monitor Process
RECO  distributed recovery
CJQ0  Job Queue Coordinator
QMNC  AQ Coordinator
MMON  Manageability Monitor Process
MMNL  Manageability Monitor Process 2

15 rows selected.

Elapsed: 00:00:00.01
EDU(SYS)>
主なプロセス一覧
Process Description
DBWn データベース・バッファ・キャッシュ内の変更された(使用済)バッファをディスクに書き込む。
LGWR ディスク上のREDOログ・ファイルへのREDOログ・バッファの書込みを行う。
CKPT チェックポイントが発生すると、すべてのデータファイルのヘッダーはそのチェックポイントの詳細を記録するために更新される必要がある。
SMON インスタンスの起動時に必要に応じてリカバリを実行する。また、SMONは、使用されなくなった一時セグメントをクリーン・アップする操作と、ディクショナリ管理表領域内で連続した使用可能エクステントを1つに結合する操作を受け持つ。
PMON ユーザー・プロセスが失敗するとPMONがプロセスをリカバリする。PMONは、データベース・バッファ・キャッシュをクリーン・アップしたり、ユーザー・プロセスが使用していたリソースを解放する。PMONは、ディスパッチャ・プロセスとサーバー・プロセスの状態も定期的にチェックし、実行を停止したサーバー・プロセスがあれば再起動する。
RECO 分散データベース構成で使用されるバックグラウンド・プロセスであり、分散トランザクションに関連する障害を自動的に解決する。
CJQ0 ユーザー・ジョブを実行する。
ARCn ログ・スイッチの発生後、REDOログ・ファイルを指定のストレージ・デバイスにコピーする。
QMNn メッセージ・キューを監視するOracle Streams Advanced Queuingのオプションのバックグラウンド・プロセスである。
MMON 管理性に関連する様々なバックグラウンド・タスクを実行する。
MMNL セッション履歴の取得、メトリック計算など、管理性に関連する軽量のバックグラウンド・タスクを頻繁に実行する。
MMAN 内部的なデータベース・タスクで使用する。
RBAL 自動ストレージ管理インスタンスでディスク・グループに対するバランス再調整アクティビティを調整する。
ORBn 自動ストレージ管理インスタンスで実際の再バランス・データ・エクステントの移動を実行する。
OSMB 自動ストレージ管理ディスク・グループを使用するデータベース・インスタンスに存在する。
DBWnによって使用済バッファをディスクに書き込むタイミング
  • サーバー・プロセスがしきい値の数までバッファをスキャンしても、クリーンな再利用可能バッファが見つからない場合は、DBWnに書込み信号が送られる。DBWnは、他の処理中に使用済バッファをディスクに非同期に書き込む。
  • DBWnは、定期的にバッファを書き込んで、REDOスレッド(ログ)内のインスタンス・リカバリを開始する位置(Checkpoint)を進める。
LGWRによってREDOログ・ファイルへ書き込むタイミング
  • ユーザー・プロセスがトランザクションをコミットしたとき
  • 3秒ごと
  • REDOログ・バッファが3分の1になったとき
  • 必要に応じ、DBWnプロセスが修正済のバッファをディスクに書き込むとき
CKPT(Checkpoint)の仕組み
  • Checkpointが発生した時の動作
    • すべての変更済ブロック(dirty block)をデータファイルに書き込む。
    • データファイルヘッダーと制御ファイルに最新のSCNを記録する。
  • Checkpointが発生するタイミング
    • REDOログを切り替える。
    • LOG_CHECKPOINT_TIMEOUTに到達。
    • LOG_CHECKPOINT_INTERVALを満たす。
    • ALTER SYSTEM CHECKPOINT/ALTER SYSTEM SWITCH LOGFILEなどのDBA操作。
    • 表領域をホットバックアップを取る時。ALTER DATABASE BEGIN BACKUP
MMONの主なタスク
  • 指定のメトリックがしきい値に違反したときにアラートを発行する。
  • 追加プロセス(MMONスレーブ)を起動してスナップショットをとる。
  • 前回変更されたSQLオブジェクトの統計値を取得する。
Unless otherwise stated, the content of this page is licensed under Creative Commons Attribution-ShareAlike 3.0 License