中山テック 代表の中山です。

先日、システム開発の現場にてDataPump(データポンプ)でのダンプにどれぐらいの時間が掛かるのか、調査をして欲しいという問い合わせを受けました。

というか、Oracleは11g以降は通常のダンプではなく、DataPumpが推奨されています。
※通常のダンプは11g以降サポートしなくなったため
今まで話題にすら上がらなかった?と思うと情報収集の甘さが露呈していますね。

そんこんなで、DataPumpは何をするものなのか、使い方、メリット・デメリットをお話したいと思います。

DataPumpとは?

高速のデータエクスポートと思っていただいて差し支えありません。
今まではexpでエクスポートを行っていた(行っている)方が殆どでしたが、サポート切れの憂き目にあってしまいました。

読み方は先ほど記載しましたが、「データポンプ」です。
※私は初め「データパンプ」と読んでました。いやー、お恥ずかしい(笑)

DataPumpの使い方

ディレクトリを作成

エクスポート専用のディレクトリぐらい作ってるわ!とお思いかもしれませんが、これはオラクルが認識可能な環境変数定義の意味であると覚えておいてください。
ちなみに、DataPumpは直接のパス指定はできません。

DDLの様式は下記の通りです。

create [OR REPLACE] directory オブジェクト名 as '対象ディレクトリのフルパス';
※OR REPLACEは同名のディレクトリがあっても無視するオプションです

これだけではオブジェクト指定してもエラーが発生します。
対象ユーザに権限を付与します。

GRANT READ ON DIRECTORY ディレクトリ名 TO ユーザ(スキーマ)名;
GRANT WRITE ON DIRECTORY ディレクトリ名 TO ユーザ(スキーマ)名;

エクスポートコマンド

expdpコマンドを使用します。
構文は下記の通りになります。

expdp <ユーザ>/<パスワード>@<接続文字列> <オプション>

一見簡単そうですが、データエクスポートする際はディレクトリやエクスポートファイル、パスを指定するケースが殆どなのでオプションが多くなります。

インポートコマンド

impdpコマンドを使用します。
構文はエクスポートとほぼ同じになります。

expdp <ユーザ>/<パスワード>@<接続文字列> <オプション>

オプションについてはOracleのDataPumpの使い方(応用編)をご参照ください。

最後に 中山テックについて

中山テックでは下記のお仕事を承っています。

ホームページ制作系

ご料金はサービス内容・料金を参照ください。

◼️ホームページ制作
※下地のみ。ロゴ、複雑なバナー、イラストは承っておりません
◼️SEO対策
Googleガイドライン診断、マネジメント、ブログ執筆など

システム開発系(SES請負契約向け)

◼️役職
プロジェクトマネジメント、PMO、リーダー、開発(要件定義~納品まで)

◼️スキル
工数見積(FP法)、折衝・提案、計画、調査、設計、実装(C、Java、クライアント系、SQL等)、データベース全般、テスト計画・項目作成、運用・保守

ご質問ございましたら、お問い合わせページよりご連絡ください。