バックグラウンドプロセス_(Oracle_Database)とは? わかりやすく解説

Weblio 辞書 > 辞書・百科事典 > 百科事典 > バックグラウンドプロセス_(Oracle_Database)の意味・解説 

バックグラウンドプロセス (Oracle Database)

出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2017/04/01 22:59 UTC 版)

バックグラウンドプロセスとは、データベースであるOracle Databaseのシステムを管理するプロセスである。バックグラウンドで動作する。ファイルシステムグローバル領域の仲介役となる。インスタンスの実行中にメモリーを管理したり、データハードディスクに書き込んだりする。

7つの主要なバックグラウンドプロセス

主要なバックグラウンドプロセスは以下の7つがある。

  • SMON (システムモニタプロセス)
  • PMON (プロセスモニタプロセス)
  • DBWR (データベースライタプロセス)
  • LGWR (ログライタプロセス)
  • CKPT (チェックポイントプロセス)
  • ARCH (アーカイバプロセス)
  • MMON (マネージャモニタプロセス)

 利用のオプションやバージョンによってはこれ以外のプロセスも存在する。

SMON

Oracle Databaseのシステムを監視する。インスタンスに障害が発生した後にOracle Databaseをオープンすると、インスタンス回復を行う。

PMON

障害が発生したプロセスを回復させる。そのプロセスが利用していたリソースを開放する。

DBWR

メモリの「データベースバッファキャッシュ[1]」上のデータをディスクの「データファイル[2]」に書き込む。データベースバッファキャッシュはシステムグローバル領域の一部である。

Oracle Databaseでは、メモリ上でデータの処理を完了させてからディスクのファイルに書き込む。書き込むデータの順番はLRU(Least Recently Used)というアルゴリズムで決定する。

DBWRを起動する数は、「DB_WRITER_PROCESSES」という初期化パラメータで指定する。DBWRは10つまで起動できる。ほとんどのシステムでは1つ起動すれば十分である。ただし、データを頻繁に変更するなら多く起動するとよい。

DBWRが書き込みをするシステムの状態

  • バッファ・キャッシュの使用量が設定されたしきい値を超えた。(LOG_CHECKPOINT_TIMEOUT)
  • 設定された時間、DBWRが書き込みをしていない。(LOG_CHECKPOINT_INTERVAL)
  • チェックポイントが発生した。
  • あるプロセスが必要なだけの空きバッファを確保できない。

LGWR

メモリの「REDOログバッファ[1]」にあるデータの変更履歴をディスクの「REDOログファイル[2]」に書き込む。REDOログバッファもシステムグローバル領域の一部である。

LGWRが書き込みをするシステムの状態

  • REDOログバッファの空きが3分の1しかない。
  • 3秒間、LGWRが書き込みをしていない。(タイムアウト)
  • DBWRが書き込みを行うとき。
  • 利用者によるデータの変更が確定された。(コミット)

CKPT

データファイルと「制御ファイル[2]」(システム制御用のファイル)を更新するための「チェックポイント」を発生させる。 チェックポイントが発生したときにDBWRへ信号を送る。DBWRはデータベースバッファキャッシュでの処理をデータファイルに反映させる。管理者はデータベースを停止するときなど、いろいろなタイミングで発生させることができる。

チェックポイントの処理の流れ

  1. LGWRが書き込みを行う。
  2. DBWRが書き込みを行う。
  3. メモリの内容を制御ファイルに反映させる。
  4. チェックポイントが正常に完了したことを全てのデータファイルと制御ファイルに反映させる。

チェックポイントが発生する条件

  • REDOログを切り替えるとき。(この切り替えを「ログスイッチ」という)。(9iよりはオンラインREDOログ・ファイルのサイズのうちの90%書き込んだ時)
  • normal(正常終了)かtransaction(トランザクション終了後),immediate(即時停止),でデータベースを停止したとき。ただし、abort(強制終了)では発生しない。
  • 「LOG_CHECKPOINT_INTERVAL」と「LOG_CHECKPOINT_TIMEOUT」という初期化パラメータで設定したしきい値を超えた。
  • 管理者が手動で発生させたとき。(ALTER SYSTEM CHECKPOINT)

ARCH

REDOログファイルを「アーカイブREDOログファイル[2]」(アーカイブのファイル)にコピーする。REDOログファイルがいっぱいになるか、ログスイッチが発生したときに、書き込みをする。

ARCHを起動する数は、「LOG_ARCHIVE_MAX_PROCESSES」という初期化パラメータに指定する。ARCHが不足しているとLGWRがARCHを自動で起動する。10つまで動作させることができる。

脚注

[ヘルプ]
  1. ^ a b システムグローバル領域を参照。
  2. ^ a b c d ファイル (Oracle Database)を参照。

関連項目




英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

「バックグラウンドプロセス_(Oracle_Database)」の関連用語

バックグラウンドプロセス_(Oracle_Database)のお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



バックグラウンドプロセス_(Oracle_Database)のページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
ウィキペディアウィキペディア
All text is available under the terms of the GNU Free Documentation License.
この記事は、ウィキペディアのバックグラウンドプロセス (Oracle Database) (改訂履歴)の記事を複製、再配布したものにあたり、GNU Free Documentation Licenseというライセンスの下で提供されています。 Weblio辞書に掲載されているウィキペディアの記事も、全てGNU Free Documentation Licenseの元に提供されております。

©2025 GRAS Group, Inc.RSS