Oracle Databaseを効率的にバックアップ・移行する際に活用されるツールが「Oracle Data Pump」です。この記事では、SCOTTスキーマの導入からexpdp / impdp の実行例、補足手順(ディレクトリ作成・権限付与)まで初心者にも分かりやすく解説します。
💰 【PR】Oracleエンジニアの市場価値、調べてみませんか?
Oracleのスキルは需要が高く、特定の資格や経験を持っていると年収が大幅にアップするケースがあります。まずはIT専門のエージェントで非公開求人をチェックしてみませんか?
Data Pumpとは?
Oracle Data Pumpは、Oracle 10g以降で提供されているデータのエクスポート/インポート機能です。
| 機能 | コマンド |
|---|---|
| エクスポート | expdp |
| インポート | impdp |
従来のexp/impとの違い
| 比較項目 | Data Pump | 従来のexp/imp |
| 処理場所 | サーバーサイド | クライアントサイド |
| 並列処理 | 対応 | 非対応 |
| ネットワーク転送 | 対応(NETWORK_LINK) | 非対応 |
| フィルタ機能 | 柔軟(WHERE句等) | 制限あり |
構成図(概略)
┌────────┐ expdp ┌────────┐
│ Oracle DB1 │ ───────→ │ dumpファイル│
└────────┘ └────────┘
↓ impdp
┌────────┐
│ Oracle DB2 │
└────────┘
なぜSCOTTスキーマをインストールするのか?
SCOTTスキーマは、Oracle Databaseにおけるサンプルスキーマの一つで、教育・学習・動作確認・実験用途に適しています。あらかじめ定義されたシンプルな表構造(EMP, DEPT, BONUS, SALGRADEなど)が用意されており、Data Pumpなどの機能検証に最適です。
SCOTTスキーマを導入することで、以下のような利点があります:
- 実際の業務データを使用せずに、安全にテストや検証ができる
- Oracle公式資料でも使用されているため、情報が豊富
- 初心者がSQLやバックアップの実践練習を行うのに適している
SCOTTスキーマのインストール手順
Oracle提供のdemobld.sqlスクリプトを使用
$ sqlplus / as sysdba
SQL> @?/rdbms/admin/utlsampl.sql
Data Pump実行前の準備
1. Data Pump用ディレクトリの作成(OS上)
--oracle ユーザー
$ mkdir -p /u01/app/oracle/dpdump
※ディレクトリ権限が足りずディレクトリが作成できない場合は root で実行
--root ユーザー
# mkdir -p /u01/app/oracle/dpdump
# chown oracle:oinstall /u01/app/oracle/dpdump
Windows の場合は手動で Data Pump で使用するフォルダを作成。
例) C:\Users\dpdump
2. Oracle上でディレクトリオブジェクト作成
CREATE OR REPLACE DIRECTORY dp_dir AS '/u01/app/oracle/dpdump';
GRANT READ, WRITE ON DIRECTORY dp_dir TO scott;
expdp 実行例(スキーマ全体)
expdp scott/tiger DIRECTORY=dp_dir DUMPFILE=scott.dmp LOGFILE=scott.log SCHEMAS=scott
expdp 実行例(特定表のみ)
expdp scott/tiger DIRECTORY=dp_dir DUMPFILE=emp.dmp LOGFILE=emp.log TABLES=emp
impdp 実行例(ダンプファイルをインポート)
impdp scott/tiger DIRECTORY=dp_dir DUMPFILE=scott.dmp LOGFILE=scott_imp.log
impdp 実行例(スキーマ名を変更)
impdp scott/tiger DIRECTORY=dp_dir DUMPFILE=scott.dmp LOGFILE=remap.log REMAP_SCHEMA=scott:scott_test
よく使うオプション一覧
| オプション | 内容 |
| SCHEMAS | スキーマ単位でエクスポート |
| TABLES | テーブル単位でエクスポート |
| QUERY | WHERE句で抽出条件を指定 |
| REMAP_SCHEMA | スキーマ名の置き換え |
| PARALLEL | 並列処理の設定 |
| EXCLUDE/INCLUDE | オブジェクトの絞り込み |
まとめ
- Data PumpはOracle標準の高速データ移行ツール
expdpとimpdpの2つのコマンドで構成SCOTTスキーマとディレクトリオブジェクトの作成が前提- 柔軟なオプションでさまざまなユースケースに対応
[参考]
ユーティリティ – 2 Oracle Data Pumpエクスポート
ユーティリティ – 3 Oracleデータ・ポンプ・インポート
💰 【PR】Oracleエンジニアの市場価値、調べてみませんか?
Oracleのスキルは需要が高く、特定の資格や経験を持っていると年収が大幅にアップするケースがあります。まずはIT専門のエージェントで非公開求人をチェックしてみませんか?




コメント