Oracleを使う上で避けて通れない重要概念のひとつが「インスタンス」です。
本記事では、初心者でも理解できるように、Oracleインスタンスの仕組み・構成・起動や停止の流れを図解つきで丁寧に解説します。
💰 【PR】Oracleエンジニアの市場価値、調べてみませんか?
Oracleのスキルは需要が高く、特定の資格や経験を持っていると年収が大幅にアップするケースがあります。まずはIT専門のエージェントで非公開求人をチェックしてみませんか?
🔰 Oracleインスタンスとは?
Oracleインスタンスとは、以下の2つから構成されるメモリ上の処理単位のことです:
- SGA(System Global Area)
- バックグラウンドプロセス群
インスタンスが起動されることで、データベースファイルへのアクセスが可能になります。
┌─────────────┐
│ Oracle Instance │
│(メモリ上の実行環境) │
├─────────────┤
│ ① SGA(共有メモリ) │
│ ② バックグラウンドプロセス │
└─────────────┘
│
▼
┌────────────────────┐
│ Oracle Database(物理ファイル群) │
└────────────────────┘
💡 データベースとの違いは?
| 項目 | 内容 |
|---|---|
| インスタンス | メモリとプロセス。起動・停止ができる実行環境 |
| データベース | データを格納するファイル群(データファイル、制御ファイル等) |
🧠 インスタンスの主な構成
🔸 SGA(System Global Area)
- Shared Pool:SQLやPL/SQLの解析結果、辞書キャッシュなどを保持
- Database Buffer Cache:読み込まれたデータブロックのキャッシュ
- Redo Log Buffer:トランザクションの変更履歴を一時保存
🔸 バックグラウンドプロセス(主要なもの)
| プロセス名 | 役割 |
|---|---|
| DBWn | バッファキャッシュのデータをディスクへ書き込む |
| LGWR | REDOログバッファの内容をログファイルへ書き込む |
| CKPT | チェックポイント処理を実施 |
| SMON/PMON | 障害回復やプロセス監視など |
🚀 インスタンスの起動ステージ
インスタンスは起動コマンド STARTUP により、以下のステージを順番に経て動作を開始します。
┌──────────┐
│ STARTUP │
└────┬─────┘
▼
┌────────────┐ ① SGA構築・初期化ファイル読み込み
│ NOMOUNT │
└────┬───────┘
▼
┌────────────┐ ② 制御ファイル読み込み
│ MOUNT │
└────┬───────┘
▼
┌────────────┐ ③ データベースファイルを開く(通常運用可能)
│ OPEN │
└────────────┘
🛑 インスタンスの停止方法と違い
Oracleには複数の停止モードが存在し、それぞれ性質が異なります。
| 停止モード | チェックポイント | トランザクション | 強制性 | 備考 |
|---|---|---|---|---|
| NORMAL | ✅ 発生する | ✅ 自動終了 | ❌ | 全ユーザーがログアウトするまで待つ |
| IMMEDIATE | ✅ 発生する | ✅ ロールバック | ❌ | すぐに停止。整合性は維持される |
| TRANSACTIONAL | ✅ 発生する | ✅ トランザクション完了を待つ | ❌ | 処理中のSQLが完了するまで待機 |
| ABORT | ❌ 発生しない | ❌ 即時終了 | ✅ | 強制停止。次回起動時にインスタンスリカバリが必要 |
❗ IMMEDIATE以外 ではなく、ABORT以外ではチェックポイントが発生します。
SHUTDOWN ABORTは整合性が保証されないため、非常時以外では非推奨です。
起動、停止について詳細はコチラ。
🧩 シングル構成とRAC構成の違い
Oracleでは、以下のようにインスタンスとデータベースの構成が異なります。
シングル構成:
1インスタンス → 1データベース(1つのSGA + プロセス)
RAC構成:
複数インスタンス(複数SGA + 各種プロセス)→ 1つの共有データベース
✅ まとめ
| 項目 | 内容 |
|---|---|
| インスタンスとは | SGAとバックグラウンドプロセスで構成されるOracleの実行環境 |
| 起動フェーズ | NOMOUNT → MOUNT → OPEN |
| 停止モードの違い | ABORTのみチェックポイントなし。他は整合性を保って安全に停止 |
| インスタンスとDBの関係 | インスタンスはメモリ上、DBはディスク上。インスタンスがないとDBアクセス不可 |
| RAC構成 | 複数インスタンスが同一DBへ同時接続するクラスタ構成。高可用性・負荷分散に有効 |
[参考]
Oracle Database データベース概要 19c
💰 【PR】Oracleエンジニアの市場価値、調べてみませんか?
Oracleのスキルは需要が高く、特定の資格や経験を持っていると年収が大幅にアップするケースがあります。まずはIT専門のエージェントで非公開求人をチェックしてみませんか?




コメント