【Oracleインスタンス完全解説】仕組み・構成・起動停止の流れを図解で理解!

Oracle Master Bronze

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バッファキャッシュのデータをディスクへ書き込む
LGWRREDOログバッファの内容をログファイルへ書き込む
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専門のエージェントで非公開求人をチェックしてみませんか?

コメント

タイトルとURLをコピーしました