![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?e8efa67)
いつもお世話になっております。
datapumpの実行方法(expdp/impdp)について、ご存知の方がいらっしゃいましたら、ご教授の程お願い致します。
------------------------------
●環境
Oracle 11g (11.2.0.3)
以下の手順で、エクスポート/インポート テストを行ったのですが、
expdpで"tables"を指定するとエラーとなり実行できませんでした。
full=y(データベース全体)は動きました。
tablesで指定するものは、"CREATE TABLE"で作成したテーブル名ではないのでしょうか。
また、テーブルスペースを削除"drop tablespace tbl01"したのですが、
expdpでデータベース全体をエクスポートしたものから、impdpしても
削除したものが戻せませんでした。
impdpのコマンドに誤りがあるのでしょうか。
●expdp実行
-----
・tablespace作成
$ sqlplus / as sysdba
SQL> create tablespace tbl01 datafile '+data/testdb/datafile/tblsp1' size 10m autoextend off;
-----
・sequence作成
SQL> create sequence seq1;
-----
・TABLE作成
SQL> CREATE TABLE TEST_TBL(USER_ID VARCHAR2(8) NOT NULL, DEPT_NO VARCHAR2(8)) tablespace tbl01;
-----
・INSERT実行(5件分)
begin
for i in 1..5 loop
INSERT INTO TEST_TBL (USER_ID, DEPT_NO) VALUES (seq1.nextval, '1234') ;
commit;
end loop;
end;
/
-----
・expdp使用する為の準備
ディレクトリの作成と read/write 権限の付与
$ sqlplus / as sysdba
SQL> create directory expdp_dir as '/u01/tpump';
SQL> grant read,write on directory expdp_dir to system;
-----
・expdb実行
$ expdp system/pass dumpfile=TEST_DIR:expdp_all.dmp logfile= TEST_DIR:expdp_all.log full=y
=====
"SYSTEM"."SYS_EXPORT_FULL_01"を起動しています: system/******** dumpfile=TEST_DIR:expdp_all.dmp logfile= full=y
BLOCKSメソッドを使用して見積り中です...
オブジェクト型DATABASE_EXPORT/SCHEMA/TABLE/TABLE_DATAの処理中です
-中略-
SYSTEM.SYS_EXPORT_FULL_01に設定されたダンプ・ファイルは次のとおりです:
/u01/tpump/expdp_all.dmp
ジョブ"SYSTEM"."SYS_EXPORT_FULL_01"が11:31:19で正常に完了しました
=====
$ expdp system/pass tables=TEST_TBL dumpfile=TEST_DIR:expdp_tbl.dmp logfile= TEST_DIR:expdp_tbl.log
=====
"SYSTEM"."SYS_EXPORT_TABLE_01"を起動しています: system/******** tables=TEST_TBL dumpfile=TEST_DIR:expdp_tbl.dmp logfile=
BLOCKSメソッドを使用して見積り中です...
BLOCKSメソッドを使用した見積り合計: 0 KB
ORA-39166: オブジェクトSYSTEM.TEST_TBLが見つかりません。
ORA-31655: ジョブに対してデータまたはメタデータ・オブジェクトが選択されていません
ジョブ"SYSTEM"."SYS_EXPORT_TABLE_01"が完了しましたが、2エラーが11:33:54で発生しています
=====
●impdp実行
$ impdp system/pass dumpfile=TEST_DIR:expdp_all.dmp logfile= TEST_DIR:impdp_all.log
=====
マスター表"SYSTEM"."SYS_IMPORT_FULL_01"は正常にロード/アンロードされました
"SYSTEM"."SYS_IMPORT_FULL_01"を起動しています: system/******** dumpfile=expdp_dir:expdp_all.dmp logfile= full=y
オブジェクト型DATABASE_EXPORT/TABLESPACEの処理中です
ORA-31684: オブジェクト型TABLESPACE:"UNDOTBS1"はすでに存在します
ORA-31684: オブジェクト型TABLESPACE:"TEMP"はすでに存在します
ORA-31684: オブジェクト型TABLESPACE:"USERS"はすでに存在します
ORA-39083: オブジェクト型TABLESPACEの作成が次のエラーで失敗しました:
ORA-01119: データベース・ファイル'+DATA/testdb/datafile/tblsp1'の作成中にエラーが発生しました。
ORA-17502: ksfdcre:4 ファイル+DATA/testdb/datafile/tblsp1の作成に失敗しました
ORA-15005: name "testdb/datafile/tblsp1" is already used by an existing alias
-中略-
※以下のORAエラーが多数発生
例:ORA-31684: オブジェクト型TABLESPACE:"UNDOTBS1"はすでに存在します
例:ORA-39151: 表"SYSTEM"."REPCAT$_PRIORITY_GROUP"が存在します。スキップのtable_exists_actionのため、すべての依存メタデータおよびデータはスキップされます
例:ORA-39111: 依存オブジェクト型OBJECT_GRANT:"SYSTEM"はスキップされ、ベース・オブジェクト型VIEW:"SYSTEM"."SCHEDULER_PROGRAM_ARGS"はすでに存在します
-中略-
オブジェクト型DATABASE_EXPORT/SCHEMA/TABLE/CONSTRAINT/REF_CONSTRAINTの処理中です
オブジェクト型DATABASE_EXPORT/SCHEMA/TABLE/STATISTICS/TABLE_STATISTICSの処理中です
オブジェクト型DATABASE_EXPORT/SCHEMA/TABLE/POST_TABLE_ACTIONの処理中です
オブジェクト型DATABASE_EXPORT/SCHEMA/TABLE/TRIGGERの処理中です
オブジェクト型DATABASE_EXPORT/SCHEMA/POST_SCHEMA/PROCACT_SCHEMAの処理中です
オブジェクト型DATABASE_EXPORT/AUDITの処理中です
ジョブ"SYSTEM"."SYS_IMPORT_FULL_01"が完了しましたが、146エラーが20:14:48で発生しています
=====
No.2ベストアンサー
- 回答日時:
> SYSスキーマなどを含めてエクスポートしたいときには、
> Full=y では無理だから各スキーマ(SYS、ORDSYS等)を指定して個別で
> 行う必要があるということなのでしょうか。
SYS スキーマはシステムの持ち物なのでexp した事はありません。
その他も、Oracle Text やExpression Filter 等、Oracle の拡張機能をInstall
した際に作成されるスキーマのため、ユーザが意識的にexp/imp する事はありません。
SYSスキーマにオブジェクトを作成しなければならない理由が無いのであれば、
新しいスキーマを作成してそちらにオブジェクトを移動した方が良いです。
テーブルのデータだけで良ければ、ユーザ作成後に
Create table 新ユーザ.テーブル名 as select * from SYS.テーブル名;
とすれば、コピー可能です。
度々ご回答いただきありがとうございます。
>SYSスキーマにオブジェクトを作成しなければならない理由が無いのであれば、
>新しいスキーマを作成してそちらにオブジェクトを移動した方が良いです。
今回のものについては、SYSに置く必要がないので、お教えいただきました手順で、
別のスキーマのオブジェクトに移動させようと思います。
No.1
- 回答日時:
こんにちわ。
> impdpのコマンドに誤りがあるのでしょうか。
SYS スキーマでTable を作成している事が原因だと思います。
確か、expdp はSYS スキーマオブジェクトは対象外だった筈だと思います。
この回答への補足
回答いただきありがとうございます。
調べてみましたら、確かにSYSスキーマオブジェクトは対象外のようです。
=====
制限事項
・システム・スキーマSYS、ORDSYS、EXFSYS、MDSYS、DMSYS、CTXSYS、ORDPLUGINS、LBACSYS、XDB、
SI_INFORMTN_SCHEMA、DIP、DBSNMP、WMSYSは、スキーマに含まれるメタデータが
ダンプ・ファイル・セット内の他のオブジェクトの一部としてエクスポートされるため、
全体エクスポートの一部としてエクスポートされません。
・SYSスキーマが所有しているオブジェクトに対する権限はエクスポートされません。
=====
もしお分かりなら再度教えていただきたいのですが、
SYSスキーマなどを含めてエクスポートしたいときには、
Full=y では無理だから各スキーマ(SYS、ORDSYS等)を指定して個別で行う必要があるということなのでしょうか。
度々ご回答いただきありがとうございます。
No2の方にも書かせていただきましたが、
今回のものについては、SYSに置く必要がないので、お教えいただきました手順で、
別のスキーマのオブジェクトに移動させようと思います。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
【お題】甲子園での思い出の残し方
「球場の砂を持って帰る」はもう古いと思った高校球児が、甲子園で負けた際に、思い出に残そうと思って行ったこと
-
oracleのimpdpでORA-39166
Oracle
-
【oracle10g 】Oracle Enterprise Managreでの表のインポート
Oracle
-
ORA-00959: 表領域'****'は存在しません
Oracle
-
-
4
特定のスキーマのテーブルを一括削除したい
その他(データベース)
-
5
ORA-01013のエラーについて経験のある方お願いします。
Oracle
-
6
SQLローダーCSV取込で、囲み文字がデータ中に入っている場合について
Oracle
-
7
Oracleで上書きImportはできますか?
その他(データベース)
-
8
SQL Plusで項目名が最後まで表示されない?
Oracle
-
9
Data Pump で大量データインポートの際のUNDO表領域、TEMP表領域不足エラー解消法のついて
Oracle
-
10
新規表領域の作成について
Oracle
-
11
SQLPLUSで結果を画面に表示しない
Oracle
-
12
データを削除しても表領域の使用率が減りません
Oracle
-
13
SIDとSERVICE_NAMEの違いとは?
Oracle
-
14
コマンドプロンプトで、ポート番号を知る方法
Excel(エクセル)
-
15
フルインポートで警告が発生します
Oracle
-
16
不明なコマンドです(FROM")。行の残りは無視されました。 のエラー"
Oracle
-
17
Oracle DataPumpでの移行
Oracle
-
18
バッチからsqlplusの接続エラーの検知について
その他(プログラミング・Web制作)
-
19
OracleのSQL*PLUSで、データが折り返されて見づらいのですが。。。
その他(データベース)
-
20
importについて
Oracle
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
異なるスキーマからデータを抽...
-
SQLでスキーマ名(所有者名)の...
-
ストアドで別スキーマのテーブ...
-
Oracle10gで他のスキマーのテー...
-
viewのバックアップ
-
シノニムってエイリアスのエイ...
-
SynonymとViewについて
-
DBリンク&シノニム経由インデ...
-
datapumpの実行方法について
-
ACCESS 不要なオブジェクトの削除
-
select insert 句
-
モジュールの表示で・・・
-
特定のスキーマのテーブルを一...
-
oracleのimpdpでORA-39166
-
データを削除しても表領域の使...
-
Viewにインデックスは張れ...
-
CLOB型へのINSERT
-
ACCESS 複数テーブル・複数フィ...
-
テーブルからのselectにおいて...
-
Data Pump で大量データインポ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
異なるスキーマからデータを抽...
-
datapumpの実行方法について
-
SQLでスキーマ名(所有者名)の...
-
特定のスキーマのテーブルを一...
-
oracleのimpdpでORA-39166
-
viewのバックアップ
-
select insert 句
-
シノニムってエイリアスのエイ...
-
SynonymとViewについて
-
Oracle10gで他のスキマーのテー...
-
DBリンク&シノニム経由インデ...
-
異なるスキーマからビュー作成
-
ストアドで別スキーマのテーブ...
-
オブジェクトエラー
-
DBリンク経由の参照について
-
データベースリンクとシノニム...
-
ストアドやviewなどのエクスポート
-
オラクルのビューの存在について
-
スキーマの削除、スキーマオブ...
-
oracle 10g ユーザやスキーマご...
おすすめ情報