Oracleインスタンスのバックグラウンド・プロセスでは、メモリー構造の管理、ディスク上のファイルへの非同期I/Oによるデータの書込み、および通常のメンテナンス・タスクを実行します。バックグラウンド・プロセスは各ユーザー・プロセスの実行を行う複数のOracle Databaseプログラムによる処理のかわりに機能を統合します。よりよいパフォーマンスおよび信頼性のための並列化を提供するために他のOracle Databaseプロセスを監視します。
現在のバックグラウンド・プロセスはデータベースで使用される機能によって決定します。表5-1に、基本的な一部のバックグラウンド・プロセスの説明を示します。
表5-1 Oracle Databaseのバックグラウンド・プロセス
バックグラウンド・プロセス | 説明 |
---|---|
データベース・ライターはディスクにあるファイルに対してデータベース・バッファ・キャッシュから変更ブロックを書き込みます。Oracle Databaseは最高で36のデータベース・ライター・プロセスを行います。 |
|
ログ・ライター・プロセスは、ディスクにREDOログ・エントリを書き込みます。REDOログ・エントリはシステム・グローバル領域(SGA)のREDOログ・バッファで生成され、ログ・ライター・プロセスによってオンラインREDOログ・ファイルに順次書き込まれます。 |
|
特定の時間に、SGA内の変更されたすべてのデータベース・バッファが、データベース・ライター・プロセス(DBWn)によってデータファイルに書き込まれます。このイベントはチェックポイントと呼ばれます。チェックポイント・プロセスがDBWnを呼び出し、データベースのデータファイルおよび制御ファイルを更新して、この更新の時間を記録します。 |
|
障害インスタンスが再開すると、システム監視でインスタンス・リカバリが実行されます。 |
|
ユーザー・プロセスが失敗した場合に、プロセス・モニターはリカバリを実行します。これはキャッシュをクリーン・アップし、失敗したプロセスが使用していたリソースを開放します。 |
|
ログ・ファイルが一杯になるかログ・スイッチが発生した場合、アーカイバ・プロセスによってオンラインREDOログ・ファイルがアーカイブ記憶域にコピーされます。アーカイブ・プロセスを実行するためにデータベースはアーカイブ・ログ・モードである必要があります。詳細は、「バックアップおよびリカバリの実行」を参照してください。 |
|
このプロセスでは、次のような様々な管理関連のバックグラウンド・タスクが実行されます。
|
|
ジョブ・キュー・プロセス(CJQ0およびJnnn) |
ジョブ・キュー・プロセスでは、多くの場合バッチ・モードでユーザー・ジョブを実行します。ジョブは、1回以上実行するようスケジュールされるユーザー定義タスクです。 |
関連項目:
Oracle Databaseバックグラウンド・プロセスの完全なリストは、『Oracle Databaseリファレンス』を参照してください。
バックグラウンド・プロセスの概要は、『Oracle Database概要』を参照してください。