ページの作成
親となるページを選択してください。
親ページに紐づくページを子ページといいます。
例: 親=スポーツ, 子1=サッカー, 子2=野球
子ページを親ページとして更に子ページを作成することも可能です。
例: 親=サッカー, 子=サッカーのルール
親ページはいつでも変更することが可能なのでとりあえず作ってみましょう!
| この記事の要点 |
|
Oracle Database とは
Oracle Database は Oracle Corporation が開発する商用リレーショナルデータベース管理システム (RDBMS) です。1979 年に世界初の商用 SQL データベースとしてリリースされて以来、金融機関・通信キャリア・大手製造業などミッションクリティカル領域で圧倒的なシェアを持ちます。PostgreSQL / MySQL / SQL Server と並ぶメジャー RDBMS の中で、最も歴史が古く機能が豊富です。
主要バージョン
| バージョン | リリース | サポート | 主な特徴 |
|---|---|---|---|
| Oracle 12c (12.2) | 2013 / 2017 | サポート終了 | マルチテナント (CDB/PDB) 導入 |
| Oracle 19c | 2019 | Long Term Support (2027 まで) | 事実上の業界標準。最も導入実績多い |
| Oracle 21c | 2021 | Innovation Release | Blockchain Table、JSON 型ネイティブ |
| Oracle 23c (23ai) | 2023-2024 | Long Term Support | AI Vector Search、JSON-Relational Duality、無料版あり |
c = Cloud の意味で、12c から導入されました。23c は 2024 年に「23ai」とリブランドされ、AI ベクトル検索機能が標準搭載されています。
エディション比較
| エディション | 用途 | ライセンス | RAC | Data Guard |
|---|---|---|---|---|
| Enterprise Edition (EE) | 大規模本番 | 有償(CPU/Named User) | ○ (有償オプション) | ○ |
| Standard Edition 2 (SE2) | 中規模 | 有償(廉価) | 制限あり | × |
| 23c Free | 開発・小規模本番 | 無償 | × | × |
| Express Edition (XE) | 開発・学習 | 無償 | × | × |
Oracle Database 23c Free は 12GB のユーザーデータ・2 CPU・2GB RAM の制限内で商用利用も無償。XE の後継で、開発・テスト・小規模システムで Oracle が無料で使えます。
PL/SQL: 独自手続き型言語
SQL を拡張した手続き型言語。ストアドプロシージャ・関数・トリガー・パッケージとして DB 内に格納し実行できます。
-- 簡単な PL/SQL ブロック
DECLARE
v_count NUMBER;
BEGIN
SELECT COUNT(*) INTO v_count FROM employees WHERE dept_id = 10;
IF v_count > 0 THEN
DBMS_OUTPUT.PUT_LINE('社員数: ' || v_count);
ELSE
DBMS_OUTPUT.PUT_LINE('該当なし');
END IF;
EXCEPTION
WHEN NO_DATA_FOUND THEN
DBMS_OUTPUT.PUT_LINE('データなし');
END;
/
-- ストアドプロシージャ
CREATE OR REPLACE PROCEDURE add_employee(
p_name IN VARCHAR2,
p_salary IN NUMBER
) AS
BEGIN
INSERT INTO employees (name, salary) VALUES (p_name, p_salary);
COMMIT;
END;
/
SQL*Plus と SQL Developer
SQL*Plus は CLI クライアント、SQL Developer は無償の GUI クライアントです。
# SQL*Plus 接続
sqlplus username/password@//host:1521/SERVICE_NAME
# EZConnect 構文
sqlplus scott/tiger@//db.example.com:1521/ORCLPDB1
# 管理者接続
sqlplus / as sysdba
# SQL*Plus 内で
SQL> SELECT instance_name, version FROM v$instance;
SQL> SHOW USER
SQL> SET LINESIZE 200
SQL> SET PAGESIZE 50
SQL> SPOOL output.log
SQL> @script.sql
SQL> EXIT
メモリ構造: SGA / PGA
| 領域 | 共有/専用 | 主な内容 |
|---|---|---|
| SGA (System Global Area) | 全プロセス共有 | 共有プール(SQL/PL/SQL キャッシュ)、DB バッファキャッシュ、REDO ログバッファ |
| PGA (Program Global Area) | プロセス専用 | セッション情報、ソート領域、ハッシュ領域 |
テーブル空間 (Tablespace)
Oracle の物理ストレージ管理単位。データファイルとオブジェクト(表・索引)の中間層です。
-- テーブル空間作成
CREATE TABLESPACE app_data
DATAFILE '/u01/oradata/orcl/app_data01.dbf'
SIZE 1G AUTOEXTEND ON NEXT 100M MAXSIZE 10G;
-- ユーザーにデフォルトテーブル空間を割当
CREATE USER appuser IDENTIFIED BY password
DEFAULT TABLESPACE app_data
TEMPORARY TABLESPACE temp
QUOTA UNLIMITED ON app_data;
GRANT CONNECT, RESOURCE TO appuser;
-- テーブル空間使用状況確認
SELECT tablespace_name,
ROUND(SUM(bytes)/1024/1024) AS used_mb
FROM dba_segments
GROUP BY tablespace_name;
リスナー / SCAN
リスナー (Listener) はクライアント接続を受け付けるネットワークプロセス。デフォルト 1521 ポート。SCAN (Single Client Access Name) は RAC クラスタへの統一接続名。
# リスナー操作
lsnrctl status
lsnrctl start
lsnrctl stop
lsnrctl services
# tnsnames.ora 例
ORCL =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = db.example.com)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = orclpdb1)
)
)
# 接続テスト
tnsping ORCL
RAC / Data Guard / Oracle Cloud
- Oracle RAC (Real Application Clusters): 複数ノードで 1 つの DB を共有するアクティブ-アクティブクラスタ。スケールアウトと高可用性
- Oracle Data Guard: スタンバイ DB へのレプリケーション。災害対策 (DR) の定番
- Oracle Cloud Infrastructure (OCI): Autonomous Database、Exadata Cloud Service、DBCS など
Oracle Instant Client
SQL*Plus / OCI ドライバを含む軽量ランタイム。アプリケーションサーバーや開発 PC から Oracle に接続する際に必要。フル DB のインストール不要で数百 MB。
# Linux にインストール
sudo yum install oracle-instantclient-basic oracle-instantclient-sqlplus
# 環境変数
export ORACLE_HOME=/usr/lib/oracle/21/client64
export PATH=$ORACLE_HOME/bin:$PATH
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:$LD_LIBRARY_PATH
# 接続確認
sqlplus user/pass@//host:1521/service
他 RDBMS との比較
| 項目 | Oracle | PostgreSQL | SQL Server | MySQL |
|---|---|---|---|---|
| ライセンス | 商用(無料版あり) | OSS | 商用 | OSS / 商用 |
| 手続き言語 | PL/SQL | PL/pgSQL | T-SQL | SQL/PSM |
| シーケンス | ○ (古くから) | ○ | ○ (2012+) | ×(AUTO_INCREMENT) |
| マルチテナント | CDB/PDB | × | × | × |
| 強み | 大規模・実績 | 機能・規格準拠 | Windows 統合 | Web 用途・軽量 |
FAQ
Q: Oracle を無料で使いたい
A: Oracle Database 23c Free をダウンロード。商用利用も可。制限は 12GB データ・2 CPU・2GB RAM。
Q: 19c と 23c、どちらを選ぶべき
A: 既存システム移行は実績豊富な 19c、新規プロジェクトで AI/ベクトル検索を使うなら 23c。両方 Long Term Support 対象。
Q: SQL Developer は無料か
A: はい、完全無償。Oracle 公式サイトからダウンロードできます。Oracle 以外の DB (MySQL / PostgreSQL) にも接続可能です。
ページの作成
親となるページを選択してください。
親ページに紐づくページを子ページといいます。
例: 親=スポーツ, 子1=サッカー, 子2=野球
子ページを親ページとして更に子ページを作成することも可能です。
例: 親=サッカー, 子=サッカーのルール
親ページはいつでも変更することが可能なのでとりあえず作ってみましょう!
- Oracle
- MySQL & MariaDB
- DB2
- SQLite
- PostgreSQL
- RDBMS共通
人気ページ
- 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アノテーションとは
最近更新/作成されたページ
- Laravel キャッシュクリア完全ガイド(cache:clear / config:clear / 2026-05-18 07:42:07
- プロジェクトの作成と削除 2026-05-18 07:42:07
- インストール直後にNetbeansが反応しない 2026-05-18 07:42:07
- 動画やチャンネルの検索 2026-05-18 07:42:07
- APIキー取得方法 2026-05-18 07:42:07
- チャンネル情報の取得 2026-05-18 07:42:07
- API 入門 — Web API(REST / GraphQL / gRPC / 2026-05-18 07:42:07
- インストール(eclipseプラグイン) 2026-05-18 07:42:07
- Laravel「Dotenv values containing spaces must be surrounded 2026-05-18 07:42:07
- エラー一覧 2026-05-18 07:42:07
- curl: (51) SSL: certificate subject name '~' does not match 2026-05-18 07:42:07
- インストール方法(Windows版) 2026-05-18 07:42:07
- JSONから配列に変換 2026-05-18 07:42:07
- 処理を一定時間待つ 2026-05-18 07:42:07
- A non well formed numeric value encountered 2026-05-18 07:42:07
コメントを削除してもよろしいでしょうか?