Chapter 07

バックグラウンド・プロセス

Me
Me
2021.11.23に更新

バックグラウンド・プロセス

インスタンス起動時に起動される全体処理を担うプロセス群をバックグランド・プロセスと呼ぶ (参考).

1. データベースライター(DBWn)

DBWnはデータベースキャッシュ内にバッファされている変更分を実際のデータベース(データファイル)へ書き込む処理を実施する. 新規にキャッシュされた更新情報はダーティバッファと呼び、データベースへの書き込みが終わったバッファは、クリーン/フリーバッファと呼ぶ.

書き込みが実行されるタイミングは以下の通り (参考).

  • チェックポイントにシグナルされた場合
  • ダーティーバッファのリスト長が一定の閾値を超えた場合
  • フリー情報や、再利用可能な情報が一つも存在しない場合 ...等

2. ログライター(LGWR)

REDOログバッファ内の情報をREDOログファイルに書き出す (参考).

書き込みが実行されるタイミングは以下の通り(参考).

  • COMMITが発行された場合
  • REDOログバッファの空き領域が不足した場合 (空き容量が1/3以下)
  • LGWRが3秒以上アイドル状態であった場合 ...等

書き込みが行われるREDOログファイルは、原則2つ以上必要であり、LGWRは循環方式で書き込み先を指定しする. また、書き込み先が変更されるタイミングをログ・スイッチと呼ぶ.

ログ・スイッチが行われるタイミングは以下の通り.

    1. 書き込み先のREDOログファイルが一杯になった場合
    1. 定期的な自動ログ・スイッチを設定している場合
    1. 以下のコマンドで手動でログ・スイッチを実行した場合 ...等
ALTER SYSTEM SWITCH LOGFILE; 

3. アーカイバ(ARCn)

ログ・スイッチが発生した際に、REDOログファイルをアーカイブ・ログ・ファイルとしてコピーする.
アーカイバ・プロセスは、ARCHIVELOGモードでデータベースが運用されている場合のみ、稼働する.
``ARCHIVELOGモードを活性化するには、初期化パラメータのDB_RECOVERY_FILE_DESTおよびDB_RECOVERY_FILE_DEST_SIZE```を指定し高速リカバリ領域を構成するか、以下のコマンドで設定の直接変更を行う.

 ALTER DATABASE ARCHIVELOG

4. チェックポイント(CKPT)

DBWnに書き込み処理を実行するシグナルを出す. また、制御ファイルにチェックポイント情報を書き込む.

5. システムモニター(SMON)

インスタンス異常終了を検知し、次回起動時にデータベースファイルの生合成を復旧する. また、未使用の一時セグメントを解放する.

6. プロセスモニター(PMON)

定期的にサーバ・プロセスやディスパッチャを監視し、プロセス異常終了を検知する. 異常終了したプロセスを検知した場合、そのプロセスが占有していたリソース(データベースキャッシュ等)のクリーンアップや強制終了を行う.

7. 管理モニター(MMON)

AWRスナップショットなど、性能分析に用いられる統計情報の定期収集を行う.

8. リスナー登録プロセス(LREG)

インスタンスに関する情報をリスナーに登録する.