Oracle マルチテナントアーキテクチャとは?

CDB/PDB(マルチテナント)

Oracle Database 12cから登場した「マルチテナントアーキテクチャ」は、従来のデータベース構成とは大きく異なる新しい仕組みです。
Oracle 21c以降ではマルチテナント構成が標準となり、これを理解しておくことは今後のOracle運用では必須となります。

本記事では、「マルチテナントって何?」「どんな構成?」「何がすごいの?」を、図を交えてやさしく解説します。

💰 【PR】Oracleエンジニアの市場価値、調べてみませんか?

Oracleのスキルは需要が高く、特定の資格や経験を持っていると年収が大幅にアップするケースがあります。まずはIT専門のエージェントで非公開求人をチェックしてみませんか?


1. マルチテナントアーキテクチャとは?

マルチテナントアーキテクチャとは、1つのOracleインスタンス内に複数のデータベース(PDB)を格納できる構造です。

この「PDB(Pluggable Database)」が、従来の“1つのOracleデータベース”とほぼ同じ機能を持つものです。
つまり、これまでのデータベース = PDB と考えると、非常にわかりやすくなります。


2. マルチテナント構成の図解

【図1】CDBとPDBの構成イメージ(PDB$SEEDを含む)

+------------------------------+
| CDB(cdb1) | ← Oracleインスタンス
+------------------------------+
| +------------------------+ |
| | CDB$ROOT | | ← 管理情報(データディクショナリ等)
| +------------------------+ |
| | PDB$SEED | | ← PDB作成用テンプレート(読み取り専用)
| +------------------------+ |
| | PDB01 | | ← 業務用データベース(例:販売管理)
| +------------------------+ |
| | PDB02 | | ← 業務用データベース(例:在庫管理)
| +------------------------+ |
+------------------------------+
  • CDB(Container Database):インスタンスの本体。複数のPDBを内包します。
  • PDB(Pluggable Database):ユーザーのデータベース。従来のOracleデータベースに相当
  • CDB$ROOT:管理機能や共通情報を保持します。
  • PDB$SEED:PDBを作成するためのテンプレート。

3. なぜマルチテナント構成が必要なのか?

これまでのOracle環境では、業務ごとに個別のデータベースインスタンスを用意していました。
この方法では、以下のような課題がありました:

  • サーバーのリソース(メモリ、CPU)が無駄に分散
  • データベースが増えるたびに管理が煩雑化
  • バックアップやパッチが個別対応になり手間がかかる

これらを解決するのが、マルチテナント構成です。


4. マルチテナント構成のメリット

項目内容
① リソースの有効活用1インスタンスに複数PDBを集約。CPUやメモリの無駄を削減。
② 管理の効率化パッチやバックアップはCDB単位で一括対応可能。
③ テナントごとの分離性各PDBは独立したデータベースとして扱える(他に影響を与えない)。
④ クラウド親和性Oracle Cloudではマルチテナント前提の構成。PDB単位の移行も容易。
⑤ 柔軟な環境構築PDBの複製(クローン)で開発・テスト環境の迅速構築が可能。
⑥ セキュリティ管理がしやすい各PDBごとに監査設定・ポリシー適用が可能。SaaS環境に最適。

5. 実際のPDB操作例(SQL)

以下のように、SQLでPDBを確認・操作できます。

-- 現在のPDB一覧を確認(CDBに接続した状態で)
SELECT pdb_name, status FROM dba_pdbs;

-- PDBを起動(OPEN)
ALTER PLUGGABLE DATABASE pdb01 OPEN;

-- PDBを停止(CLOSE)
ALTER PLUGGABLE DATABASE pdb01 CLOSE IMMEDIATE;

6. 非CDB構成との比較

比較項目非CDB構成(従来)マルチテナント構成(CDB+PDB)
データベース構成インスタンスごとに1つ1インスタンスに複数のPDB
管理個別対応が必要一括管理が可能(パッチ・バックアップ)
拡張性限界がある柔軟にPDB追加・削除が可能
クラウド対応難しいクラウドとの親和性が高い

7. PDBは「従来のデータベース」と同じように使える!

PDBは「スキーマ、ユーザー、権限、表、インデックス、PL/SQL」などをすべて持ち、従来のOracleデータベースと同じように使用できます。

つまり、ユーザー視点では「PDB=今までのOracleデータベース」と捉えても問題ありません。
違いは「それがCDBという器の中にある」という点だけです。


まとめ

  • Oracleのマルチテナント構成は、今後の標準アーキテクチャ
  • PDBは従来のデータベースに相当し、違和感なく運用が可能
  • 管理性、柔軟性、セキュリティ、クラウド対応など、あらゆる面で利点が多い


[参考]
4 CDBの作成および構成

💰 【PR】Oracleエンジニアの市場価値、調べてみませんか?

Oracleのスキルは需要が高く、特定の資格や経験を持っていると年収が大幅にアップするケースがあります。まずはIT専門のエージェントで非公開求人をチェックしてみませんか?

コメント

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