Transcript
Page 1: Oracle Direct Seminar では、EXPで使用できたパラメータのほとんどを利用することができます。IMPでパラメータを指定することにより、EXPで作成したダンプファイルからさらに対象デ

<Insert Picture Here>

Oracle Direct Seminar

意外と知らない!? Export/Importの基礎

日本オラクル株式会社

Page 2: Oracle Direct Seminar では、EXPで使用できたパラメータのほとんどを利用することができます。IMPでパラメータを指定することにより、EXPで作成したダンプファイルからさらに対象デ

Copyright© 2010, Oracle. All rights reserved. 2

Agenda

• Export/Importの概要

• 代表的な使い方 ーオリジナル編-

• 代表的な使い方 ーData Pump編-

• 知っておきたい便利な使い方

• まとめ無償技術サービスOracle Direct Concierge

http://www.oracle.com/lang/jp/direct/services.html

・Oracle Database バージョンアップ支援・Oracle 構成相談(Sizing)サービス・パフォーマンス・クリニック・サービス・SQL Serverからの移行アセスメント・DB2からの移行支援サービス・Sybaseからの移行支援サービス・MySQLからの移行相談サービス・PostgreSQLからの移行相談サービス・Accessからの移行アセスメント・Oracle Developer/2000 Webアップグレード相談・仮想化アセスメントサービス・ビジネスインテリジェンス・エンタープライズエディション・アセスメントサービス・簡易業務診断サービス

Page 3: Oracle Direct Seminar では、EXPで使用できたパラメータのほとんどを利用することができます。IMPでパラメータを指定することにより、EXPで作成したダンプファイルからさらに対象デ

Copyright© 2010, Oracle. All rights reserved. 3

Agenda

• Export/Importの概要

• 代表的な使い方 ーオリジナル編-

• 代表的な使い方 ーData Pump編-

• 知っておきたい便利な使い方

• まとめ無償技術サービスOracle Direct Concierge

http://www.oracle.com/lang/jp/direct/services.html

・Oracle Database バージョンアップ支援・Oracle 構成相談(Sizing)サービス・パフォーマンス・クリニック・サービス・SQL Serverからの移行アセスメント・DB2からの移行支援サービス・Sybaseからの移行支援サービス・MySQLからの移行相談サービス・PostgreSQLからの移行相談サービス・Accessからの移行アセスメント・Oracle Developer/2000 Webアップグレード相談・仮想化アセスメントサービス・ビジネスインテリジェンス・エンタープライズエディション・アセスメントサービス・簡易業務診断サービス

Page 4: Oracle Direct Seminar では、EXPで使用できたパラメータのほとんどを利用することができます。IMPでパラメータを指定することにより、EXPで作成したダンプファイルからさらに対象デ

Copyright© 2010, Oracle. All rights reserved. 4

Export/Importとは

• データベース間のデータの移動を可能にしています

エクスポート

インポート

•通称、このOSファイルのことをダンプ・ファイルと

呼んでいます。このダンプファイルはバイナリ形式であり、エクスポートインポートユーティリティのみで読み書きがなされます。

• FTPを使用して別サイトに転送、または物理的に移送(テープの場合)できます

エクスポート対象のオブジェクトを抽出し、OS上のファイルに書き込まれます

ダンプ・ファイルからオブジェクトの定義および表データを読み込みます

Page 5: Oracle Direct Seminar では、EXPで使用できたパラメータのほとんどを利用することができます。IMPでパラメータを指定することにより、EXPで作成したダンプファイルからさらに対象デ

Copyright© 2010, Oracle. All rights reserved. 5

Export/Importの用途• 論理バックアップの取得

Database

Backup

Database

論理バックアップは、様々な状況で物理バックアップを補足するために役立ちます。ただ、論理バックアップをリストアするためには物理バックアップを再構築して、Oracleサーバーで使用できるようにする必要があります。よって、論理バックアップは、物理バックアップを補うために使用する事を推奨します

Exportユーティリティで論理バックアップを取得します。

Importユーティリティを使用して、再インポート可能です。

Page 6: Oracle Direct Seminar では、EXPで使用できたパラメータのほとんどを利用することができます。IMPでパラメータを指定することにより、EXPで作成したダンプファイルからさらに対象デ

Copyright© 2010, Oracle. All rights reserved. 6

Export/Importの用途• データベースのバージョンアップ

ハードウェアが老朽化してきたから、そろそろハードウェアのリプレイスをしないと・・・・

このタイミングでOracle

Databaseもバージョンアップしよう!

バージョンアップするとなると、 データを移行する必要があるな・・・

Export/Importでデータを移行しよう!

Page 7: Oracle Direct Seminar では、EXPで使用できたパラメータのほとんどを利用することができます。IMPでパラメータを指定することにより、EXPで作成したダンプファイルからさらに対象デ

Copyright© 2010, Oracle. All rights reserved. 7

Export/Importの種類

• オリジナルのExport/Import• expおよびimpコマンドで起動するオリジナルのエクスポート・

ユーティリティおよびインポート・ユーティリティです

• Data Pump• Oracle Database10gから搭載されたexpdpおよびimpdp

コマンドで起動するエクスポート・ユーティリティおよびインポート・

ユーティリティです

• データのロード・アンロードを高速に行うことができます

Page 8: Oracle Direct Seminar では、EXPで使用できたパラメータのほとんどを利用することができます。IMPでパラメータを指定することにより、EXPで作成したダンプファイルからさらに対象デ

Copyright© 2010, Oracle. All rights reserved. 8

オリジナルのExport/Import 概要図

Import Utility

IMP

Oracle Net

Oracle Net

Oracle Database

Export Utility

EXP

xxx.dmp

ダンプ・ファイルはクライアント側に格納されます

Page 9: Oracle Direct Seminar では、EXPで使用できたパラメータのほとんどを利用することができます。IMPでパラメータを指定することにより、EXPで作成したダンプファイルからさらに対象デ

Copyright© 2010, Oracle. All rights reserved. 9

Data Pump 概要図

Import Utility

IMPDP

Oracle Net

Oracle Database

Export Utility

EXPDP

Oracle Net

PL/SQL Package Access Driver xxx.dmp

ダンプ・ファイルはサーバー側に格納されます

EXPDP/IMPDP

の実行エンジン

Page 10: Oracle Direct Seminar では、EXPで使用できたパラメータのほとんどを利用することができます。IMPでパラメータを指定することにより、EXPで作成したダンプファイルからさらに対象デ

Copyright© 2010, Oracle. All rights reserved. 10

オリジナルとData Pumpの違い

パラレル化が可能

APIにより呼び出しが可能

ジョブ管理・状況監視が可能

停止・再開が可能

サーバ側で実行するData Pumpのメリット

オリジナルのExport/Importは、

基本的にユーティリティ側で実行するが、

Data Pumpはデータベース・サーバーの機能を使ってデータベース・サーバー側で実行されます

Page 11: Oracle Direct Seminar では、EXPで使用できたパラメータのほとんどを利用することができます。IMPでパラメータを指定することにより、EXPで作成したダンプファイルからさらに対象デ

Copyright© 2010, Oracle. All rights reserved. 11

Export/Importの起動

次のいずれかの方法を使用して、

Export/Importの起動およびパラメータの指定ができます。

• コマンドライン

• 対話方式モード(Enterprise Manager)

Page 12: Oracle Direct Seminar では、EXPで使用できたパラメータのほとんどを利用することができます。IMPでパラメータを指定することにより、EXPで作成したダンプファイルからさらに対象デ

Copyright© 2010, Oracle. All rights reserved. 12

Agenda

• Export/Importの概要

• 代表的な使い方 ーオリジナル編-

• 代表的な使い方 ーData Pump編-

• 知っておきたい便利な使い方

• まとめ無償技術サービスOracle Direct Concierge

http://www.oracle.com/lang/jp/direct/services.html

・Oracle Database バージョンアップ支援・Oracle 構成相談(Sizing)サービス・パフォーマンス・クリニック・サービス・SQL Serverからの移行アセスメント・DB2からの移行支援サービス・Sybaseからの移行支援サービス・MySQLからの移行相談サービス・PostgreSQLからの移行相談サービス・Accessからの移行アセスメント・Oracle Developer/2000 Webアップグレード相談・仮想化アセスメントサービス・ビジネスインテリジェンス・エンタープライズエディション・アセスメントサービス・簡易業務診断サービス

Page 13: Oracle Direct Seminar では、EXPで使用できたパラメータのほとんどを利用することができます。IMPでパラメータを指定することにより、EXPで作成したダンプファイルからさらに対象デ

Copyright© 2010, Oracle. All rights reserved. 13

Export/Importを使用する前に

• Catexp.sqlまたはcatalog.sqlスクリプトの実行

スクリプトを実行すると、データベースはエクスポートおよび

インポート操作に備えて調整されます

• Export/Importを実行するデータベース上のSYSユーザーで1回実行しておく必要があります通常はデータベースの作成時にcatalog.sqlが実行されているので、

改めて実行する必要はありません

•データ・ディレクトリへの必要なエクスポート・ビューおよびインポート・ビューの作成

• EXP_FULL_DATABASEロールの作成• EXP_FULL_DATABASEおよびIMP_FULL_DATABASEロールへのすべての必要な権限の割当て

• DBAロールへのEXP_FULL_DATABASEおよびIMP_FULL_DATABASEの割当て

• インストールされているcatexp.sqlのバージョンの記録

Page 14: Oracle Direct Seminar では、EXPで使用できたパラメータのほとんどを利用することができます。IMPでパラメータを指定することにより、EXPで作成したダンプファイルからさらに対象デ

Copyright© 2010, Oracle. All rights reserved. 14

Export/Importを使用する前に

•十分なディスク領域の確認実際にExport/Importを実行するOS上のユーザーが、エクスポート・ファイルの書き込み先のディスク上またはテープ上に、

十分な記憶領域があることを確認してください

•アクセス権限の確認Export/Importを実行する際に接続するデータベース・ユーザには、データベースに対するCREATE SESSION権限が必要です。また、別のユーザーが所有する表をエクスポートする場合は、EXP_FULL_ DATABASEロールを付与されている必要があります

Page 15: Oracle Direct Seminar では、EXPで使用できたパラメータのほとんどを利用することができます。IMPでパラメータを指定することにより、EXPで作成したダンプファイルからさらに対象デ

Copyright© 2010, Oracle. All rights reserved. 15

コマンドからのExport/Importの起動

•表モード

•ユーザー・モード

•表領域モード

•全データベース・モード

exp(imp) ユーザ名/パスワード エクスポートするモード ダンプファイル

Oracle Databaseユーティリティ 11g リリース1(11.1)

表20-3 各モードでエクスポートおよびインポートされるオブジェクト

http://otndnld.oracle.co.jp/document/products/oracle11g/111/doc_dvd/server.111/E05768-02/exp_imp.htm#12189

次のコマンドからExport/Importを起動できます

Ex. exp(imp) scott/tiger owner=oracle file=exp.dmp

Page 16: Oracle Direct Seminar では、EXPで使用できたパラメータのほとんどを利用することができます。IMPでパラメータを指定することにより、EXPで作成したダンプファイルからさらに対象デ

Copyright© 2010, Oracle. All rights reserved. 16

モード 機能説明 パラメータ

フル データベース全体のエクスポート FULL=y

ユーザー 指定したユーザー全体のエクスポート OWNER=user[, …]

テーブル 指定したテーブル全体のエクスポート TABLES=table[, …]

テーブルスペース 指定したテーブルスペース全体のエクスポート

TABLESPACES=tablespace[, …]

EXPで利用可能なモード

例1: > exp scott/tiger full=y

例2: > exp scott/tiger file=exp.dmp tables=(emp,dept)

フルモード

テーブルモード

Export – オリジナル –Export Utility

EXPexpおよびimpコマンドで起動する

オリジナルのエクスポート・ユーティリティ

フル・モードでの注意点SYSが所有する オブジェクト、およびORDSYS、CTXSYS、 MDSYS およびORDPLUGINSスキーマはエクスポートされません

オリジナル

Page 17: Oracle Direct Seminar では、EXPで使用できたパラメータのほとんどを利用することができます。IMPでパラメータを指定することにより、EXPで作成したダンプファイルからさらに対象デ

Copyright© 2010, Oracle. All rights reserved. 17

エクスポートするオブジェクトを指定します

• トリガー:TRIGGERS

オブジェクトの指定

制約、権限、索引、トリガーをエクスポートするか指定します

• 権限:GRANTS

• 索引:INDEXES

• 制約:CONSTRAINTS

COMMAND > EXP scott/tiger TABLES=(wendy.emp) GRANT=n

COMMAND > EXP scott/tiger TABLES=(wendy.emp) TRIGGERS=n

COMMAND > EXP scott/tiger TABLES=(wendy.emp) INDEXES=n

COMMAND > EXP scott/tiger TABLES=(wendy.emp) CONSTRAINTS=n

デフォルトはすべて y になります

オリジナル

Page 18: Oracle Direct Seminar では、EXPで使用できたパラメータのほとんどを利用することができます。IMPでパラメータを指定することにより、EXPで作成したダンプファイルからさらに対象デ

Copyright© 2010, Oracle. All rights reserved. 18

エクスポート・ユーティリティによって読み込まれたデータのある時点における一貫性を維持し、expコマンドの実行中に変更されないように指定します

COMMAND > EXP scott/tiger TABLES=(wendy.emp) CONSISTENT=n

CONSISTENT指定

データの一貫性を維持できるよう指定します

CONSISTENT

注意:ユーザーSYSとして接続しているとき、またはAS SYSDBAを使用しているとき(あるいはその両方)に実行するエクスポートでは、CONSISTENT=yはサポートされません。

デフォルトはCONSISTENT=nです

オリジナル

Page 19: Oracle Direct Seminar では、EXPで使用できたパラメータのほとんどを利用することができます。IMPでパラメータを指定することにより、EXPで作成したダンプファイルからさらに対象デ

Copyright© 2010, Oracle. All rights reserved. 19

2人のユーザーによる更新時のイベントの順序

時系列ユーザA

ユーザB

TABLE1の

エクスポート開始

TABLE1、TABLE2の更新

トランザクションのコミット

TABLE1の

エクスポート終了

TABLE2の

エクスポート開始

CONSISTENT = n の場合 ・・・ TABLE2の更新は書き込まれますが、

TABLE1の更新は書き込まれません

CONSISTENT = y の場合 ・・・ TABLE1、TABLE2の更新ともに

書き込まれません

•読み取り一貫性の確保を実現

エクスポート開始した時点の整合性が確保できている状態で、データをエクスポートできます

オリジナル

Page 20: Oracle Direct Seminar では、EXPで使用できたパラメータのほとんどを利用することができます。IMPでパラメータを指定することにより、EXPで作成したダンプファイルからさらに対象デ

Copyright© 2010, Oracle. All rights reserved. 20

従来型パス・エクスポートに比べて非常に高速なダイレクト・パス・エクスポートの使用を指定します

COMMAND > EXP scott/tiger TABLES=(wendy.emp) DIRECT=n

ダイレクト・パス・ロードの指定

ダイレクト・パス・エクスポートの使用を指定します

DIRECT

デフォルトはDIRECT=nです

注意:

次の場合は、ダイレクトエクスポートは使用できません

•対話方式でのエクスポートの起動

•表領域モード( TRANSPORT_TABLESPACES=Y )

• QUERYパラメータの指定

オリジナル

Page 21: Oracle Direct Seminar では、EXPで使用できたパラメータのほとんどを利用することができます。IMPでパラメータを指定することにより、EXPで作成したダンプファイルからさらに対象デ

Copyright© 2010, Oracle. All rights reserved. 21

従来型とダイレクト・パス・ロードの違い

Oracle専用のメモリ領域

①エクスポートの実行

③データをディスクからバッファ・キャッシュへ読

み込み

④行はクライアント・プロセスにある評価バッファに転送します

従来型パス・ロードによるエクスポート

②SELECT文発行

⑤式の評価が終了すると、エクスポート・ファイルに書き出さます

評価バッファ

オリジナル

Page 22: Oracle Direct Seminar では、EXPで使用できたパラメータのほとんどを利用することができます。IMPでパラメータを指定することにより、EXPで作成したダンプファイルからさらに対象デ

Copyright© 2010, Oracle. All rights reserved. 22

従来型とダイレクト・パス・ロードの違い

ダイレクト・パス・ロードによるエクスポート

Oracle専用のメモリ領域

評価バッファ①エクスポートの実行

②データをディスクからバッファ・キャッシュへ読

み込み

③評価バッファをバイパスし、エクスポートファイルに書き出されます

評価バッファをバイパスするため、

従来型パス・エクスポートに比べ

非常に高速です

オリジナル

Page 23: Oracle Direct Seminar では、EXPで使用できたパラメータのほとんどを利用することができます。IMPでパラメータを指定することにより、EXPで作成したダンプファイルからさらに対象デ

Copyright© 2010, Oracle. All rights reserved. 23

Import – オリジナル –

Import Utility

IMPimpコマンドで起動する

オリジナルのインポート・ユーティリティ

COMMAND > imp scott/tiger tables=emp,dept

IMPでは、EXPで使用できたパラメータのほとんどを利用することができます。

IMPでパラメータを指定することにより、EXPで作成したダンプファイルからさらに対象データを絞りこんでインポートすることが可能です。

ダンプファイルからemp表とdept表のみをインポート

COMMAND > imp scott/tiger owner=wendy

ダンプファイルからwendyユーザーのオブジェクトをインポート

オリジナル

Page 24: Oracle Direct Seminar では、EXPで使用できたパラメータのほとんどを利用することができます。IMPでパラメータを指定することにより、EXPで作成したダンプファイルからさらに対象デ

Copyright© 2010, Oracle. All rights reserved. 24

IGNORE=yに指定すると、データベース・オブジェクトの作成時に作成エラーが発生しても、このエラーは無視され、エラーはレポートされずに継続します。

COMMAND > IMP scott/tiger FILE=exp.dmp IGNORE=y

エラーを無視するよう指定

オブジェクト作成エラーの処理方法を指定します

IGNORE

デフォルトはIGNORE=nです。この場合、オブジェクト作成エラーがログに記録

または表示されて、インポートが停止します

表がすでに存在する場合

IGNORE=yを指定すると、行は既存の表にインポートされます(エラー/メッセージは出力なし)

IGNORE=nを指定すると、エラーがレポートされ、表は行が挿入されないまま

スキップされます。また、表に依存するオブジェクトは作成されません

オリジナル

Page 25: Oracle Direct Seminar では、EXPで使用できたパラメータのほとんどを利用することができます。IMPでパラメータを指定することにより、EXPで作成したダンプファイルからさらに対象デ

Copyright© 2010, Oracle. All rights reserved. 25

その他のOptionコマンドについて

•以下のマニュアルよりご確認下さい

Oracle Databaseユーティリティ 11g リリース1(11.1)

エクスポート・パラメータ

http://otndnld.oracle.co.jp/document/products/oracle11g/111/doc_dv

d/server.111/E05768-02/exp_imp.htm#12994

Oracle Databaseユーティリティ 11g リリース1(11.1)

インポート・パラメータ

http://otndnld.oracle.co.jp/document/products/oracle11g/111/doc_dv

d/server.111/E05768-02/exp_imp.htm#16740

オリジナル

Page 26: Oracle Direct Seminar では、EXPで使用できたパラメータのほとんどを利用することができます。IMPでパラメータを指定することにより、EXPで作成したダンプファイルからさらに対象デ

Copyright© 2010, Oracle. All rights reserved. 26

Agenda

• Export/Importの概要

• 代表的な使い方 ーオリジナル編-

• 代表的な使い方 ーData Pump編-

• 知っておきたい便利な使い方

• まとめ無償技術サービスOracle Direct Concierge

http://www.oracle.com/lang/jp/direct/services.html

・Oracle Database バージョンアップ支援・Oracle 構成相談(Sizing)サービス・パフォーマンス・クリニック・サービス・SQL Serverからの移行アセスメント・DB2からの移行支援サービス・Sybaseからの移行支援サービス・MySQLからの移行相談サービス・PostgreSQLからの移行相談サービス・Accessからの移行アセスメント・Oracle Developer/2000 Webアップグレード相談・仮想化アセスメントサービス・ビジネスインテリジェンス・エンタープライズエディション・アセスメントサービス・簡易業務診断サービス

Page 27: Oracle Direct Seminar では、EXPで使用できたパラメータのほとんどを利用することができます。IMPでパラメータを指定することにより、EXPで作成したダンプファイルからさらに対象デ

Copyright© 2010, Oracle. All rights reserved. 27

Data Pump(データ・ポンプ) とは

Oracle Database10gから導入された新しいユーティリティです。

Oracle Data Pumpテクノロジを使用すると、データおよびメタデータをデータベース間で非常に高速に移動できます

利用方法• expdp/impdpコマンド

• Enterprise Manager

• DBMS_DATAPUMP PL/SQLパッケージ

• その他、外部表などのエンジンとして内部利用

•関連マニュアル

Oracle Databaseユーティリティ 11g リリース1(11.1)http://otndnld.oracle.co.jp/document/products/oracle11g/111/doc_d

vd/server.111/E05768-02/toc.htm

Page 28: Oracle Direct Seminar では、EXPで使用できたパラメータのほとんどを利用することができます。IMPでパラメータを指定することにより、EXPで作成したダンプファイルからさらに対象デ

Copyright© 2010, Oracle. All rights reserved. 28

Data Pumpのここがすごい!

•ダイレクトパスAPIの改善による処理速度向上エクスポート:オリジナルのExportに比べて2倍高速

インポート:オリジナルのImportに比べて15~40倍高速

Oracle Data Pump

を使用したら速くなった!

Data Pumpは、大量データを扱う大きなジョブ向き!

Data Pumpでは、マスター表を作成するためのオーバーヘッドによって小さなジョブは遅くなりますが、大量のデータを高速に処理することは、中・大規模なジョブにとって大きなメリットとなります!

Page 29: Oracle Direct Seminar では、EXPで使用できたパラメータのほとんどを利用することができます。IMPでパラメータを指定することにより、EXPで作成したダンプファイルからさらに対象デ

Copyright© 2010, Oracle. All rights reserved. 29

検証環境

Sun Enterprise 3000

400MHz * 4CPU

4GB Memory

索引の張られていないテーブル(53partitions21,000,000rows)を用いてData Pumpを使っ

たエクスポート・インポートと従来のものとを比較する。作成されるダンプファイルは1.15GB。

750.418

136.45774.708 55.193

0

200

400

600

800

imp impdp impdp(2p) impdp(4p)

従来型インポートと Data Pump インポートの処理時間比較

443.483

80.005 49.664 51.269

0

200

400

600

800

exp expdp expdp(2p) expdp(4p)

従来型エクスポートと Data Pump エクスポートの処理時間比較

従来エクスポートに比べ、Data Pump は2パラ

レルで約9分の1の処理時間!!

従来インポートに比べ、Data Pump は4パラレ

ルで約13分の1の処理時間!!

パフォーマンス検証内容

検証結果

Page 30: Oracle Direct Seminar では、EXPで使用できたパラメータのほとんどを利用することができます。IMPでパラメータを指定することにより、EXPで作成したダンプファイルからさらに対象デ

Copyright© 2010, Oracle. All rights reserved. 30

ダンプファイルを出力するディレクトリに対して、DB上でディレクトリオブジェクトを作成します。

実行時には、ディレクトリオブジェクトをDIRECTORYパラメータで指定します。

SQL > CREATE DIRECTORY DPUMP_DIR1 AS ‘/home/oracle/oradata/dpump_dir’;

SQL > GRANT READ, WRITE ON DIRECTORY dpump_dir1 TO scott;

COMMAND > expdp scott/tiger tables=emp,dept directory=dpump_dir1

パラメータでディレクトリを指定していない場合、OS環境変数「DATA_PUMP_DIR」、なければ ディレクトリオブジェクト「DATA_PUMP_DIR」が参照されます。

COMMAND > set DATA_PUMP_DIR=DPUMP_DIR1; export DATA_PUMP_DIR

COMMAND > expdp scott/tiger schemas=scott

Data Pumpではクライアントではなくサーバーにより書き込みが行われるため、処理を行うディレクトリ位置が特定されている必要があります

権限付与

ディレクトリオブジェクト作成

環境変数の設定

Export/Import – 出力先ディレクトリの指定Data Pump

Page 31: Oracle Direct Seminar では、EXPで使用できたパラメータのほとんどを利用することができます。IMPでパラメータを指定することにより、EXPで作成したダンプファイルからさらに対象デ

Copyright© 2010, Oracle. All rights reserved. 31

9i までのエクスポートツールと同様の操作性をもった新エクスポートユーティリティ

モード 機能説明 パラメータ

フル データベース全体のエクスポート FULL=y

スキーマ 指定したスキーマ全体のエクスポート SCHEMAS=schema[, …]

テーブル 指定したテーブル全体のエクスポート TABLES=table[, …]

テーブルスペース 指定したテーブルスペース全体のエクスポート

TABLESPACES=tablespace[, …]

EXPDPで利用可能なモード

例1: > expdp scott/tiger full=y

例2: > expdp scott/tiger dumpfile=exp.dmp tables=emp,dept

フルモード

テーブルモード

Export – Data Pump –Export Utility

EXPDP

Data Pump

Page 32: Oracle Direct Seminar では、EXPで使用できたパラメータのほとんどを利用することができます。IMPでパラメータを指定することにより、EXPで作成したダンプファイルからさらに対象デ

Copyright© 2010, Oracle. All rights reserved. 32

フィルタ処理を行い、エクスポートの対象となるオブジェクトを細かく設定することができます。

エクスポートの対象オブジェクトをINCLUDEパラメータで指定します。

COMMAND > expdp scott/tiger include=table

エクスポートの対象から除外するオブジェクトをEXCLUDEパラメータで指定します。

COMMAND > expdp scott/tiger exclude=index:¥”LIKE ¥‟EMP%¥‟¥”

LIKEやINを指定することも可能です。※空白等を区切り文字にしないためにダブルクオーテーションが

必要ですが、OSによってはエスケープ文字が必要となります。従

って、通常はパラメータを記述したファイルを読み込ませると便利です(次ページ参照)。

※INCLUDEとEXCLUDEパラメータは排他的で、同時に指定できません。

COMMAND > expdp scott/tiger include=index

フィルタ処理を行いますINCLUDE / EXCLUDE

Data Pump

Page 33: Oracle Direct Seminar では、EXPで使用できたパラメータのほとんどを利用することができます。IMPでパラメータを指定することにより、EXPで作成したダンプファイルからさらに対象デ

Copyright© 2010, Oracle. All rights reserved. 33

指定したSCNもしくは時刻における一貫性を維持したデータのエクスポートが可能です。

あるSCNにおける一貫性を維持したデータをエクスポートするためにFLASHBACK_SCNパラメータを指定します。

COMMAND > expdp scott/tiger flashback_scn=364909 SCN指定

ある時刻における一貫性を維持したデータをエクスポートするためにFLASHBACK_TIMEパラメータを指定します。

COMMAND > cat parfile.txt

FLASHBACK_TIME=“TO_TIMESTAMP(„2004/03/20 10:00‟,‟YYYY/MM/DD HH:MI‟)”

COMMAND > expdp scott/tiger parfile=parfile.txt

時刻指定

TO_TIMESTAMP()で時刻を指定。

エスケープ文字が必要となるので、パラメータファイルで指定。

フラッシュバック・モードを指定しますFLASHBACK_SCN / FLASHBACK_TIME

Data Pump

Page 34: Oracle Direct Seminar では、EXPで使用できたパラメータのほとんどを利用することができます。IMPでパラメータを指定することにより、EXPで作成したダンプファイルからさらに対象デ

Copyright© 2010, Oracle. All rights reserved. 34

エクスポート処理をパラレルで行うことが可能です。

並列度をPARALLELパラメータで指定します。

出力先ディレクトリをそれぞれ指定することも可能です。

COMMAND > expdp scott/tiger parallel=3 dumpfile=dpump_dir1:expdat%U.dmp,

dpump_dir2%U.dmp

COMMAND > ls –lR

dpump_dir1:

…….expdat01.dmp

…….expdat02.dmp

dpump_dir2:

…….expdat01.dmp

※要Enterprise Edition

置き換え変数(%U)を指定しない場合、dumpfileのファイル数はparallelの値に合わせる必要

があります。指定している場合、指定されたファイル指定がラウンドロビンに使用されます。

並列度の指定

生成されたダンプファイルセットの確認

パラレル・エクスポートを指定しますPARALLEL

Data Pump

Page 35: Oracle Direct Seminar では、EXPで使用できたパラメータのほとんどを利用することができます。IMPでパラメータを指定することにより、EXPで作成したダンプファイルからさらに対象デ

Copyright© 2010, Oracle. All rights reserved. 35

ESTIMATE

ダンプファイルを生成せず、生成されるダンプファイルのサイズを見積もることが可能です。

見積もりのモードをESTIMATEパラメータで指定します。

パラメータ値には次のどちらかを設定します。

BLOCKS ・・・ ブロックサイズにオブジェクトのブロック数をかけて見積もります(精度は高くありません)

STATISTICS ・・・ 統計情報を元に見積もります

見積もりのみ出力する場合には、ESTIMATE_ONLY=yを指定します。

COMMAND > expdp scott/tiger tables=emp,dept estimate=blocks

estimate_only=y

ダンプファイルのサイズの見積もりますData Pump

Page 36: Oracle Direct Seminar では、EXPで使用できたパラメータのほとんどを利用することができます。IMPでパラメータを指定することにより、EXPで作成したダンプファイルからさらに対象デ

Copyright© 2010, Oracle. All rights reserved. 36

実際にデータを作成し(40万行、2GB)、見積もりの精度を計測しました。dbms_statsはサンプル100%でかけてます。

COMMAND > expdp scott/tiger tables=test estimate=blocks estimate_only=y

Estimate in progress using BLOCKS method...

Processing object type TABLE_EXPORT/TABLE/TBL_TABLE_DATA/TABLE/TABLE_DATA

. estimated “SCOTT".“TEST" 3.062 GB

Total estimation using BLOCKS method: 3.062 GB

COMMAND > expdp scott/tiger tables=test estimate=statistics estimate_only=y

Estimate in progress using STATISTICS method...

Processing object type TABLE_EXPORT/TABLE/TBL_TABLE_DATA/TABLE/TABLE_DATA

. estimated “SCOTT".“TEST" 1.947 GB

Total estimation using STATISTICS method: 1.947 GB

COMMAND > ls –l

……. 2092179456 …. expdat.dmp

約1.948GBマスターテーブルの容量が見積もりに入らないため、その分は考慮する必要があります。

見積もり実行例

BLOCKS

STATISTICS

確認

Data Pump

Page 37: Oracle Direct Seminar では、EXPで使用できたパラメータのほとんどを利用することができます。IMPでパラメータを指定することにより、EXPで作成したダンプファイルからさらに対象デ

Copyright© 2010, Oracle. All rights reserved. 37

Import – Data Pump –

9i までのインポートツールと同様の操作性をもった新インポートユーティリティ

COMMAND > impdp scott/tiger tables=emp,dept

Import Utility

IMPDP

IMPDPでは、EXPDPで使用できたパラメータのほとんどを利用することができます。

IMPDPでパラメータを指定することにより、EXPDPで作成したダンプファイルからさらに対象データを絞りこんでインポートすることが可能です。

ダンプファイルからemp表とdept表のみをインポート。

COMMAND > impdp scott/tiger include=index

ダンプファイルから索引のみをインポート。

Data Pump

Page 38: Oracle Direct Seminar では、EXPで使用できたパラメータのほとんどを利用することができます。IMPでパラメータを指定することにより、EXPで作成したダンプファイルからさらに対象デ

Copyright© 2010, Oracle. All rights reserved. 38

NETWORK_LINK

ネットワーク・リンクを使用します

データベース・リンクを使用して、リモートデータベースから直接ローカルデータベースにインポートを行うことができます。

参考:エクスポートのネットワーク・リンク指定は、リモートデータベースのデータをローカルにエクスポートする機能です。インポートの場合には直接ローカルデータベースに書き込むので、ダンプファイルを作成しません。

COMMAND > impdp scott/tiger tables=emp,dept directory=dpump_dir

network_link=scott.jp.oracle.com

接続するリモートデータベースを、NETWORK_LINKパラメータで指定します。指定する値はデータベース・リンク名です。

DB LINKの指定

※ネットワーク・リンク・インポートは10g以降のみ行うことができます。

Data Pump

Page 39: Oracle Direct Seminar では、EXPで使用できたパラメータのほとんどを利用することができます。IMPでパラメータを指定することにより、EXPで作成したダンプファイルからさらに対象デ

Copyright© 2010, Oracle. All rights reserved. 39

Agenda

• Export/Importの概要

• 代表的な使い方 ーオリジナル編-

• 代表的な使い方 ーData Pump編-

• 知っておきたい便利な使い方

• まとめ無償技術サービスOracle Direct Concierge

http://www.oracle.com/lang/jp/direct/services.html

・Oracle Database バージョンアップ支援・Oracle 構成相談(Sizing)サービス・パフォーマンス・クリニック・サービス・SQL Serverからの移行アセスメント・DB2からの移行支援サービス・Sybaseからの移行支援サービス・MySQLからの移行相談サービス・PostgreSQLからの移行相談サービス・Accessからの移行アセスメント・Oracle Developer/2000 Webアップグレード相談・仮想化アセスメントサービス・ビジネスインテリジェンス・エンタープライズエディション・アセスメントサービス・簡易業務診断サービス

Page 40: Oracle Direct Seminar では、EXPで使用できたパラメータのほとんどを利用することができます。IMPでパラメータを指定することにより、EXPで作成したダンプファイルからさらに対象デ

Copyright© 2010, Oracle. All rights reserved. 40

複数の表をExportし、データのみをImportしたい

複数の表をExportし、データのみをImportしたいが、外部キーが多数あり、整合性制約に違反してしまう・・・

COMMAND> expdp system/manager ;

SQL> alter table emp disable constraint emp_no_fk ;

・・・関連するすべての参照整合性約をdisableに設定します

COMMAND> impdp system/manager ;

SQL> alter table emp enable constraints emp_no_fk ;

・・・関連するすべての参照整合性約をenableに設定します

以下のように、関連する参照整合性制約を disableし、Import後に参照整合性制約を enable にすると、エラーを解消できます

オリジナル / Data Pump

Page 41: Oracle Direct Seminar では、EXPで使用できたパラメータのほとんどを利用することができます。IMPでパラメータを指定することにより、EXPで作成したダンプファイルからさらに対象デ

Copyright© 2010, Oracle. All rights reserved. 41

Exportダンプから一部データを取り出す方法

誤って一部データをdelete

し、commit してしまった!!

エクスポートのダンプ・ファイルから取り出したい・・・

COMMAND> impdp system/manager

remap_schema=oradirect:dummy

SQL> insert into oradirect.emp select * from dummy.emp

where emp_id=100;

SQL> drop table dummy.emp

SQL> delete from oradirect.emp

where emp_id=100;

SQL> commit;

以下のように削除したデータを

エクスポートのダンプ・ファイルより取り出せます!

注)エクスポートした時点のデータと削除したデータが一致するかは不明であるため、

この例の場合emp_id=100のデータに関して、 エクスポート時と誤って削除した時が

同じであったことを前提と しています。

オリジナル / Data Pump

Page 42: Oracle Direct Seminar では、EXPで使用できたパラメータのほとんどを利用することができます。IMPでパラメータを指定することにより、EXPで作成したダンプファイルからさらに対象デ

Copyright© 2010, Oracle. All rights reserved. 42

エクスポートファイルのサイズを指定する方法

Option FILESIZE

デフォルト データは、最大サイズに到達するまで

1つのファイルに書き込まれます

用途 FILESIZEパラメータの値(バイト制限)を指定すると、

エクスポート・ユーティリティによって、それぞれの

ダンプ・ファイルに指定したバイト数のみ書き込まれます。

使用例 exp scott/tiger TABLES=emp FILESIZE=2048

キロバイト(KB)、メガバイト(MB)、ギガバイト(GB)を付けて指定する事もできます

例:FILESIZE=5MBを指定した場合

5MB ・・・

expdat.dmp expdat2.dmp expdat3.dmp

5MB 5MB

オリジナル / Data Pump

Page 43: Oracle Direct Seminar では、EXPで使用できたパラメータのほとんどを利用することができます。IMPでパラメータを指定することにより、EXPで作成したダンプファイルからさらに対象デ

Copyright© 2010, Oracle. All rights reserved. 43

WHERE句を指定しエクスポート範囲を限定する方法

Option QUERY

デフォルト なし

用途 エクスポートの実行時に、一連の表から行のサブセットを選択できるようにします。

QUERYパラメータの値は、SELECT文のWHERE句を含む文字列です。

例:職種がSALESMANで、給与が1600より尐ない

従業員のみをエクスポートする場合

exp scott/tiger TABLES=emp

QUERY=¥"WHERE job=¥'SALESMAN¥' and sal ¥<1600¥"

オリジナル / Data Pump

Page 44: Oracle Direct Seminar では、EXPで使用できたパラメータのほとんどを利用することができます。IMPでパラメータを指定することにより、EXPで作成したダンプファイルからさらに対象デ

Copyright© 2010, Oracle. All rights reserved. 44

索引作成文を受け取る方法 -オリジナル-

エクスポート・ファイルのCREATE TABLE文もコメントとして含まれます!

オリジナル

Option INDEXFILE

デフォルト なし

用途 索引作成文を受け取るファイルを指定します

使用例 imp scott/tiger TABLES=(wendy.emp) INDEXFILE=„index.txt‟

Page 45: Oracle Direct Seminar では、EXPで使用できたパラメータのほとんどを利用することができます。IMPでパラメータを指定することにより、EXPで作成したダンプファイルからさらに対象デ

Copyright© 2010, Oracle. All rights reserved. 45

さらにData PumpではすべてのSQL文を受け取れます

Data Pump

Option SQLFILE

デフォルト なし

用途 インポートが他のパラメータに基づいて実行するすべてのSQL

DDLの書込み先のファイルを指定します

使用例 impdp scott/tiger TABLES=(wendy.emp) SQLFILE=„index.txt‟

注意:

パスワードは、SQLファイルに含まれないことに注意してください。

たとえば、実行したDDLにCONNECT文が含まれている場合、

その文はコメントで置き換えられ、スキーマ名のみが表示されます。

例:TEST_TABLE表をインポートする際のSQLFILEを受け取る場合

impdp oradirect/oradirect dumpfile=test_table.dmp tables=test_table

sqlfile=sqlfile.txt

Page 46: Oracle Direct Seminar では、EXPで使用できたパラメータのほとんどを利用することができます。IMPでパラメータを指定することにより、EXPで作成したダンプファイルからさらに対象デ

Copyright© 2010, Oracle. All rights reserved. 46

SQLFILEの一例Data Pump

CREATE TABLE文や

CREATE INDEX文を

確認する事ができます

さらにINSERT文も

確認する事ができます

Page 47: Oracle Direct Seminar では、EXPで使用できたパラメータのほとんどを利用することができます。IMPでパラメータを指定することにより、EXPで作成したダンプファイルからさらに対象デ

Copyright© 2010, Oracle. All rights reserved. 47

Data Pump 11g新機能を活用!

• 11g新機能• ダンプファイルの圧縮(Advanced Compression Option)

• データやメタデータを圧縮してダンプファイルにエクスポートできる。

• ダンプファイルの暗号化(Advanced Security Option)

• データやメタデータを暗号化してダンプファイルにエクスポートできる。

Page 48: Oracle Direct Seminar では、EXPで使用できたパラメータのほとんどを利用することができます。IMPでパラメータを指定することにより、EXPで作成したダンプファイルからさらに対象デ

Copyright© 2010, Oracle. All rights reserved. 48

Data Pump 圧縮

$ expdp scott/tiger DIRECTORY=dpump_dir DUMPFILE=scott.dmp

COMPRESSION=ALL SCHEMAS=scott

Advanced Compression

Option

• COMPRESSION={ALL | DATA_ONLY | METADATA_ONLY | NONE}

• NONE...エクスポート操作全体について圧縮が無効• METADATA_ONLY(default)...全ての“メタデータ”が圧縮形式でダンプ・ファイルへ書き込み

(以下の操作はAdvanced Compressionオプションが必要)

• DATA_ONLY...全ての“データ”が圧縮形式でダンプ・ファイルへ書き込み

• ALL...データ、メタデータともに圧縮

• (例)スキーマを指定し、メタデータ、データともに圧縮してダンプ・ファイルscott.dmpへエクスポート

Data Pump

Page 49: Oracle Direct Seminar では、EXPで使用できたパラメータのほとんどを利用することができます。IMPでパラメータを指定することにより、EXPで作成したダンプファイルからさらに対象デ

Copyright© 2010, Oracle. All rights reserved. 49

$ expdp scott/tiger DIRECTORY=dpump_dir DUMPFILE=scott_enc.dmp

SCHEMAS=scott ENCRYPTION=data_only ENCRYPTION_PASSWORD=tiger

Advanced Security

Option

Data Pump 暗号化

• ENCRYPTION = {ALL | DATA_ONLY |

ENCRYPTED_COLUMNS_ONLY | METADATA_ONLY | NONE}

• ALL:すべてのデータおよびメタデータについて暗号化が有効

• DATA_ONLY:データのみが暗号化

• ENCRYPTED_COLUMNS_ONLY:暗号化された列のみが暗号化される

• METADATA_ONLY:メタデータのみが暗号化

• NONE:データは暗号化されない

• (例)ダンプ・ファイルでデータのみが暗号化されるエクスポート操作

Data Pump

Page 50: Oracle Direct Seminar では、EXPで使用できたパラメータのほとんどを利用することができます。IMPでパラメータを指定することにより、EXPで作成したダンプファイルからさらに対象デ

Copyright© 2010, Oracle. All rights reserved. 50

Agenda

• Export/Importの概要

• 代表的な使い方 ーオリジナル編-

• 代表的な使い方 ーData Pump編-

• 知っておきたい便利な使い方

• まとめ無償技術サービスOracle Direct Concierge

http://www.oracle.com/lang/jp/direct/services.html

・Oracle Database バージョンアップ支援・Oracle 構成相談(Sizing)サービス・パフォーマンス・クリニック・サービス・SQL Serverからの移行アセスメント・DB2からの移行支援サービス・Sybaseからの移行支援サービス・MySQLからの移行相談サービス・PostgreSQLからの移行相談サービス・Accessからの移行アセスメント・Oracle Developer/2000 Webアップグレード相談・仮想化アセスメントサービス・ビジネスインテリジェンス・エンタープライズエディション・アセスメントサービス・簡易業務診断サービス

Page 51: Oracle Direct Seminar では、EXPで使用できたパラメータのほとんどを利用することができます。IMPでパラメータを指定することにより、EXPで作成したダンプファイルからさらに対象デ

Copyright© 2010, Oracle. All rights reserved. 51

まとめ

• エクスポート・インポートの種類は2種類(10g以降)

• オリジナルのExport/ImportとData Pump

• Oracle Database 10gからはData Pumpを使用する• Oracle Database 10g以前のバージョンからデータを移行する場合は、オリジナルのエクスポート・インポートを使用する

• ダイレクト・パス・ロードで高速な移行を実現

• Optionコマンドを使って、最適なExport/Importを実現• Advanced Compressionで圧縮して高速化を実現

• セキュリティを高めたいなら、Advanced Security

Page 52: Oracle Direct Seminar では、EXPで使用できたパラメータのほとんどを利用することができます。IMPでパラメータを指定することにより、EXPで作成したダンプファイルからさらに対象デ

Copyright© 2010, Oracle. All rights reserved. 52

OTNセミナー オンデマンド コンテンツダイセミで実施された技術コンテンツを動画で配信中!!

ダイセミのライブ感はそのままに、お好きな時間で受講頂けます。

※掲載のコンテンツ内容は予告なく変更になる可能性があります。期間限定での配信コンテンツも含まれております。お早めにダウンロード頂くことをお勧めいたします。

OTN オンデマンド

Page 53: Oracle Direct Seminar では、EXPで使用できたパラメータのほとんどを利用することができます。IMPでパラメータを指定することにより、EXPで作成したダンプファイルからさらに対象デ

Copyright© 2010, Oracle. All rights reserved. 53

Oracle エンジニアのための技術情報サイト

オラクルエンジニア通信http://blogs.oracle.com/oracle4engineer/

• 技術資料

• ダイセミの過去資料や製品ホワイトペーパー、スキルアップ資料などを多様な方法で検索できます

• キーワード検索、レベル別、カテゴリ別、製品・機能別

• コラム

• オラクル製品に関する技術コラムを毎週お届けします

• 決してニッチではなく、誰もが明日から使える技術の「あ、そうだったんだ!」をお届けします

先月はこんな資料が人気でした

Oracle Database 11gR2 RAC インストレーション・ガイド ASM 版 Microsoft Windows x86-64

Oracle Database 11gR2 旧バージョンからのアップグレードオラクルエンジニア通信

Page 54: Oracle Direct Seminar では、EXPで使用できたパラメータのほとんどを利用することができます。IMPでパラメータを指定することにより、EXPで作成したダンプファイルからさらに対象デ

Copyright© 2010, Oracle. All rights reserved.

オラクル クルクルキャンペーン

54

Enterprise Editionはここが違う!!

• 圧倒的なパフォーマンス!

•データベース管理がカンタン!

•データベースを止めなくていい!

• もちろん障害対策も万全!

Oracle Databaseのライセンス価格を大幅に抑えて

ご導入いただけます

詳しくはコチラ

http://www.oracle.co.jp/campaign/kurukuru/index.html

あのOracle Database Enterprise Editionが超おトク!!

お問い合わせフォームhttp://www.oracle.co.jp/inq_pl/INQUIRY/quest?rid=28

多くのお客様でサーバー使用期間とされる

5年間にライセンス期間を限定

•期間途中で永久ライセンスへ差額移行

• 5年後に新規ライセンスを購入し継続利用

• 5年後に新システムへデータを移行

Page 55: Oracle Direct Seminar では、EXPで使用できたパラメータのほとんどを利用することができます。IMPでパラメータを指定することにより、EXPで作成したダンプファイルからさらに対象デ

Copyright© 2010, Oracle. All rights reserved. 55

http://www.oracle.co.jp/inq_pl/INQUIRY/quest?rid=28

Oracle Direct 検索

あなたにいちばん近いオラクル

Oracle Directまずはお問合せください

Web問い合わせフォーム フリーダイヤル

専用お問い合わせフォームにてご相談内容を承ります。

※フォームの入力には、Oracle Direct Seminar申込時と同じログインが必要となります。

※こちらから詳細確認のお電話を差し上げる場合がありますので、ご登録されている連絡先が最新のものになっているか、ご確認下さい。

0120-155-096

※月曜~金曜 9:00~12:00、13:00~18:00

(祝日および年末年始除く)

システムの検討・構築から運用まで、ITプロジェクト全般の相談窓口としてご支援いたします。

システム構成やライセンス/購入方法などお気軽にお問い合わせ下さい。

Page 56: Oracle Direct Seminar では、EXPで使用できたパラメータのほとんどを利用することができます。IMPでパラメータを指定することにより、EXPで作成したダンプファイルからさらに対象デ

Copyright© 2010, Oracle. All rights reserved. 56

OTN×ダイセミ でスキルアップ!!

※OTN掲示版は、基本的にOracleユーザー有志からの回答となるため100%回答があるとは限りません。ただ、過去の履歴を見ると、質問の大多数に関してなんらかの回答が書き込まれております。

Oracle Technology Network(OTN)を御活用下さい。

・一般的な技術問題解決方法などを知りたい!・セミナ資料など技術コンテンツがほしい!

一般的技術問題解決にはOTN掲示版の

「データベース一般」をご活用ください

http://otn.oracle.co.jp/forum/index.jspa?categoryID=2

過去のセミナ資料、動画コンテンツはOTNの

「OTNセミナー オンデマンド コンテンツ」へ

http://www.oracle.com/technology/global/jp/ondemand/otn-seminar/index.html

※ダイセミ事務局にダイセミ資料を請求頂いても、お受けできない可能性がございますので予めご了承ください。ダイセミ資料はOTNコンテンツ オン デマンドか、セミナ実施時間内にダウンロード頂くようお願い致します。

Page 57: Oracle Direct Seminar では、EXPで使用できたパラメータのほとんどを利用することができます。IMPでパラメータを指定することにより、EXPで作成したダンプファイルからさらに対象デ

Copyright© 2010, Oracle. All rights reserved. 57

以上の事項は、弊社の一般的な製品の方向性に関する概要を説明するものです。また、情報提供を唯一の目的とするものであり、いかなる契約にも組み込むことはできません。以下の事項は、マテリアルやコード、機能を提供することをコミットメント(確約)するものではないため、購買決定を行う際の判断材料になさらないで下さい。オラクル製品に関して記載されている機能の開発、リリースおよび時期については、弊社の裁量により決定されます。

Oracle、PeopleSoft、JD Edwards、及びSiebelは、米国オラクル・コーポレーション及びその子会社、関連会社の登録商標です。その他の名称はそれぞれの会社の商標の可能性があります。


Recommended