バックグラウンドプロセス (Oracle Database)
障害が発生したプロセスを回復させる。そのプロセスが利用していたリソースを開放する。
データファイルと「制御ファイル」(システム制御用のファイル)を更新するための「チェックポイント」を発生させる。 チェックポイントが発生したときにDBWRへ信号を送る。DBWRはデータベースバッファキャッシュでの処理をデータファイルに反映させる。管理者はデータベースを停止するときなど、いろいろなタイミングで発生させることができる。
メモリの「データベースバッファキャッシュ」上のデータをディスクの「データファイル」に書き込む。データベースバッファキャッシュはシステムグローバル領域の一部である。
Oracle Databaseでは、メモリ上でデータの処理を完了させてからディスクのファイルに書き込む。書き込むデータの順番はLRU(Least Recently Used)というアルゴリズムで決定する。
DBWRを起動する数は、「DB_WRITER_PROCESSES」という初期化パラメータで指定する。DBWRは10つまで起動できる。ほとんどのシステムでは1つ起動すれば十分である。ただし、データを頻繁に変更するなら多く起動するとよい。