7 x 24 在线支持!
oracle DUL第二篇——DULでdmpファイルを抽出する
ORACLEデータベース によくあるエラ の解決策
プロのOracle Databaseの復旧サービスを提供
携帯番号: +86 13764045638 メール:service@parnassusdata.com
Dulによく使われるコマンド:
DUL> unload database ;
DUL> unload user ;
DUL> unload table ;
DUL> scan database;
DUL> scan tables;
テストテーブルの記録数を記してください:
SYS@lunar>select count(*) from lunar.lunar; COUNT(*) ---------- 17634 ここでは17634 行記録である Elapsed: 00:00:00.09 SYS@lunar>
ほかの配置バラメタは第一篇に参考してくださいDUL 第一篇 —— DULは何か?
DULを起動してunpump headerを実行すれば、抽出できる:
DUL> unpump header dump file lunar.01.dmp; Version is 769 check sum is 1864601239 data pump id is 6783164 master_obj_no is 18333 header blocks is 1 data pump file number is 1 block size is 4096 character set id is 873 master table block offset is 411 (Master table is at byte offset (411 -1) * 4096 = 1679360) DUL> unpump table lunar.dmp (OWNER VARCHAR2(30),OBJECT_NAME VARCHAR2(128),SUBOBJECTNAME VARCHAR2(30),OBJECT_ID NUMBER,DATA_OBJECT_ID NUMBER,OBJECT_TYPE VARCHAR2(19),CREATED DATE,LAST_DDL_TIME DATE,TIMESTAMP VARCHAR2(19),STATUS VARCHAR2(7),TEMPORARY VARCHAR2(1),GENERATED VARCHAR2(1),SECONDARY VARCHAR2(1),NAMESPACE NUMBER,EDITION_NAME VARCHAR2(30)) dump file lunar.01.dmp from 15048 until 1676342; 17634 rows unloaded DUL>
ここで17634 行記録は全部抽出できた。テストしたいであれば、より楽しくなる。一部のデータをddして、dulがどうやって働くかを確認できる。。
そして、データをインポートする。O(∩_∩)O
[oracle@lunar dul]$ sqlldr userid=lunar/lunar control=/home/oracle/test/dul/dump000.ctl SQL*Loader: Release 11.2.0.3.0 - Production on Thu Mar 6 13:11:44 2014 Copyright (c) 1982, 2011, Oracle and/or its affiliates. All rights reserved. Commit point reached - logical record count 64 Commit point reached - logical record count 128 Commit point reached - logical record count 192 Commit point reached - logical record count 256 Commit point reached - logical record count 320 Commit point reached - logical record count 384 Commit point reached - logical record count 448 Commit point reached - logical record count 512 Commit point reached - logical record count 576 Commit point reached - logical record count 640 Commit point reached - logical record count 704 Commit point reached - logical record count 768 Commit point reached - logical record count 832 Commit point reached - logical record count 896 ................ Commit point reached - logical record count 17270 Commit point reached - logical record count 17334 Commit point reached - logical record count 17398 Commit point reached - logical record count 17462 Commit point reached - logical record count 17526 Commit point reached - logical record count 17590 Commit point reached - logical record count 17634 [oracle@lunar dul]$
ここで、17634 行データ、すべてもテーブルにインポートした。