››
Oracle Databaseは、Oracle社が開発・提供するリレーショナルデータベース管理システム(RDBMS)です。企業の基幹システムや大規模Webサービスで広く採用されています。
リレーショナルデータベースでは、データを**表(テーブル)**の形式で管理します。
| 用語 | 説明 |
|---|---|
| テーブル(表) | データを行と列で管理する構造 |
| 行(レコード) | 1件のデータ |
| 列(カラム) | データの属性(項目) |
| 主キー | 行を一意に識別する列 |
| 外部キー | 他のテーブルの主キーを参照する列 |
データの操作にはSQL(Structured Query Language)を使います。
| 分類 | 略称 | 主なコマンド | 用途 |
|---|---|---|---|
| データ定義言語 | DDL | CREATE, ALTER, DROP | 表の作成・変更・削除 |
| データ操作言語 | DML | SELECT, INSERT, UPDATE, DELETE | データの問合せ・追加・更新・削除 |
| データ制御言語 | DCL | GRANT, REVOKE | 権限の付与・取消 |
| トランザクション制御 | TCL | COMMIT, ROLLBACK | トランザクションの確定・取消 |
Oracle Databaseは、大きく「インスタンス」と「データベース」の2つに分かれます。
インスタンスは、メモリ構造とバックグラウンド・プロセスで構成されます。
データベースは物理ファイルで構成されます。
| ファイル | 説明 |
|---|---|
| データファイル | 実際のデータを格納(表、索引など) |
| REDOログファイル | データ変更の記録(障害復旧に使用) |
| 制御ファイル | データベースの構造情報を保持 |
ポイント: インスタンスはメモリ上の存在(揮発性)、データベースはディスク上の存在(永続性)です。インスタンスを起動してデータベースをマウント・オープンすることで利用可能になります。
Oracle Database 12c以降では、**マルチテナント・アーキテクチャ**が導入されました。
| 概念 | 説明 |
|---|---|
| CDB(コンテナ・データベース) | 複数のPDBを格納する器 |
| PDB(プラガブル・データベース) | 個別のデータベース。アプリケーションから見える単位 |
| CDB$ROOT | CDB全体の管理情報を格納するルート・コンテナ |
| PDB$SEED | 新しいPDB作成時のテンプレート |
Oracle AI Database 26aiは最新バージョンで、AI関連の機能が大幅に強化されています。
| 要素 | 説明 |
|---|---|
| インスタンス | メモリ(SGA/PGA)+ バックグラウンド・プロセス |
| データベース | データファイル + REDOログ + 制御ファイル |
| CDB | 複数PDBを格納するコンテナ |
| PDB | 個別のプラガブル・データベース |