ページの作成
親となるページを選択してください。
親ページに紐づくページを子ページといいます。
例: 親=スポーツ, 子1=サッカー, 子2=野球
子ページを親ページとして更に子ページを作成することも可能です。
例: 親=サッカー, 子=サッカーのルール
親ページはいつでも変更することが可能なのでとりあえず作ってみましょう!
| この記事の要点 |
|
バックグラウンドプロセスとは
Oracle Database のインスタンスは、メモリ領域である SGA と複数のバックグラウンドプロセスの組み合わせで構成されます。バックグラウンドプロセスは、ユーザーが直接意識することなく、データの永続化・ログ出力・障害監視・チェックポイント処理などを並行して受け持つ常駐プロセス群です。アプリ側からの SQL を処理する「サーバープロセス」とは役割が分かれており、サーバープロセスが SGA 上で行った更新を、バックグラウンドプロセスが裏でディスクに反映していくイメージです。
主要なバックグラウンドプロセスの一覧
| プロセス | 正式名 | 役割 |
|---|---|---|
| DBWR (DBWn) | Database Writer | バッファキャッシュ上の更新済みブロックをデータファイルに書き出す |
| LGWR | Log Writer | REDO ログバッファの内容を REDO ログファイルに書き出す |
| SMON | System Monitor | インスタンス起動時のクラッシュリカバリ、未使用一時セグメントの解放 |
| PMON | Process Monitor | 異常終了したユーザープロセスのクリーンアップ、ロックや一時表のリリース |
| CKPT | Checkpoint | データファイルと制御ファイルのヘッダにチェックポイント情報を書き込む |
| ARCn | Archiver | 満杯になった REDO ログファイルをアーカイブログとして退避(アーカイブログモード時) |
| MMON / MMNL | Manageability Monitor | AWR スナップショット取得や統計情報の収集 |
| RECO | Recoverer | 分散トランザクションの未解決状態を解消 |
処理フローのイメージ
SQL UPDATE が来てから永続化されるまでの流れを追うと、各プロセスの役割が理解しやすくなります。
- サーバープロセスが SGA のバッファキャッシュ上でブロックを更新し、変更履歴を REDO ログバッファに書く
- COMMIT 時に LGWR が REDO ログバッファを REDO ログファイルへ書き出す(先に永続化)
- 条件が整うと DBWR が更新済みブロックをデータファイルに非同期で書き出す
- 定期的に CKPT がチェックポイントを進めて、データファイル/制御ファイルのヘッダを更新
- REDO ログが切り替わると ARCn がアーカイブログにコピー(アーカイブログモード時)
- インスタンス異常終了からの再起動時には SMON が REDO を適用してクラッシュリカバリを行う
プロセスの稼働状況を確認する
動的パフォーマンスビュー V$BGPROCESS を参照すると、起動中のバックグラウンドプロセスを一覧で確認できます。
-- 起動中のバックグラウンドプロセス一覧
SELECT name, description, paddr
FROM v$bgprocess
WHERE paddr <> '00';
-- 個別プロセスの状態(OS プロセス ID やステータス)
SELECT s.sid, s.serial#, p.spid, p.pname
FROM v$session s
JOIN v$process p ON s.paddr = p.addr
WHERE s.type = 'BACKGROUND';OS から見たプロセス
UNIX/Linux 系では、Oracle のバックグラウンドプロセスは ora_<プロセス名>_<SID> のような名前で常駐しています。
$ ps -ef | grep ora_ | grep -v grep
oracle 1234 1 0 09:00 ? 00:00:00 ora_pmon_ORCL
oracle 1236 1 0 09:00 ? 00:00:00 ora_smon_ORCL
oracle 1238 1 0 09:00 ? 00:00:00 ora_dbw0_ORCL
oracle 1240 1 0 09:00 ? 00:00:00 ora_lgwr_ORCL
oracle 1242 1 0 09:00 ? 00:00:00 ora_ckpt_ORCL
oracle 1244 1 0 09:00 ? 00:00:00 ora_arc0_ORCL覚えておきたいポイント
- LGWR は「コミットされた変更を必ず先に REDO に書く」という、いわゆる WAL(Write-Ahead Logging)を担保するプロセス
- DBWR は性能のために遅延書き込みするので、データファイルが常に最新とは限らない(差分は REDO とチェックポイントで担保)
- PMON が居ないと、異常切断したセッションが握っていたロックが解放されない
- SMON が止まるとクラッシュリカバリができないためインスタンスとして致命的
関連記事
- Oracle
- インスタンス
- SGA(システムグローバル領域)
- PGA
- LGWR
- SMON
- PMON (Process Monitor)
- CKPT
- ARC (Archiver Process / アーカイバ プロセス)
- REDOログファイル (物理構造 Oracle)
ページの作成
親となるページを選択してください。
親ページに紐づくページを子ページといいます。
例: 親=スポーツ, 子1=サッカー, 子2=野球
子ページを親ページとして更に子ページを作成することも可能です。
例: 親=サッカー, 子=サッカーのルール
親ページはいつでも変更することが可能なのでとりあえず作ってみましょう!
同階層のページ
- SGA(システムグローバル領域)
- PGA
- バックグラウンドプロセス
人気ページ
- 1 Eclipseで「サーバーに追加または除去できるリソースがありません。」の原因と対処法
- 2 tomcat の起動 / 停止ログと catalina.log・catalina.out の違い
- 3 JavaScript base URL 取得方法|window.location.origin と SSR/Node.js 対応
- 4 YouTube Data API v3 エラー一覧|403/400/404 の主要原因と切り分け
- 5 Spring Frameworkのアノテーション一覧
- 6 Laravel エラー一覧|500/Blade/DB 接続/ルーティングの代表エラー
- 7 3Dグラフィックスとは|モデリング/レンダリング/主要ソフトウェア (Blender / Maya)
- 8 【Spring】@Valueアノテーションとは
- 9 CATALINA_HOME の確認方法 (Linux / Mac)
- 10 【Spring】@Autowiredアノテーションとは
最近更新/作成されたページ
- IPv6とは|128bitアドレス・コロン16進表記/::省略・リンクローカル・SLAAC・デュアルスタック NEW 2026-06-22 12:34:44
- VPNとは|暗号トンネル・サイト間/リモートアクセス・IPsec/SSL-VPN/WireGuardを解説 NEW 2026-06-22 12:19:10
- MAC アドレスフィルタリングの仕組みと限界 | ネットワーク入門 NEW 2026-06-22 12:19:10
- gRPC とは HTTP/2 + Protocol Buffers の高速 RPC | ネットワーク入門 NEW 2026-06-22 12:17:25
- WebRTC とは ブラウザ間 P2P の音声・映像・データ通信 | ネットワーク入門 NEW 2026-06-22 12:17:25
- HTTP/2 とは 多重化・HPACK・バイナリフレーム | ネットワーク入門 NEW 2026-06-22 12:17:25
- Web通信プロトコル入門 HTTP/2・HTTP/3・WebSocket・gRPC・WebRTC | ネットワーク入門 NEW 2026-06-22 12:17:25
- HTTP/3 (QUIC) とは UDP ベースの低遅延 Web 通信 | ネットワーク入門 NEW 2026-06-22 12:17:25
- WebSocket とは 全二重リアルタイム通信 ws/wss | ネットワーク入門 NEW 2026-06-22 12:17:25
- 証明書と認証局(CA)とは|X.509・信頼チェーン・DV/OV/EV・失効(CRL/OCSP)を解説 NEW 2026-06-22 12:17:24
- ファイアウォールとは|パケットフィルタ・ステートフル・DMZ・次世代FW(L4/L7)を解説 NEW 2026-06-22 12:17:24
- iptables/nftablesとは|テーブル・チェーン・ルール例・永続化をLinux視点で解説 NEW 2026-06-22 12:17:24
- HAProxy とは frontend/backend と設定例 | ネットワーク入門 NEW 2026-06-22 12:17:24
- CDN とは エッジキャッシュ・TTL・Cloudflare/CloudFront | ネットワーク入門 NEW 2026-06-22 12:17:24
- TLS/SSLの仕組み|ハンドシェイク・暗号スイート・前方秘匿性・証明書検証をわかりやすく解説 NEW 2026-06-22 12:17:24
コメントを削除してもよろしいでしょうか?