oracle expdp/impdp用法

perfychi發表於2012-06-12
Normal 0 7.8 磅 0 2 false false false EN-US ZH-CN X-NONE Data Pump 反映了整個匯出/匯入過程的完全革新。不使用常見的 SQL 命令,而是應用專用 APIdirect path api etc) 來以更快得多的速度載入和解除安裝資料。

1.Data Pump
匯出 expdp
例子:
sql>create directory dpdata1 as '/u02/dpdata1';
sql>grant read, write on directory dpdata1 to ananda;
$expdp ananda/abc123 tables=CASES directory=DPDATA1 dumpfile=expCASES.dmp   job_name=CASES_EXPORT

$expdp ananda/abc123 tables=CASES directory=DPDATA1
  dumpfile=expCASES_%U.dmp parallel=4 job_name=Cases_Export

include/exclude
例子:
include=table:"in('DB','TS')"
或者include=table:"like '%E%'"
或者include=function,package,procedure,table:"='EMP'"
或者exclude=SEQUENCE,TABLE:"IN ('EMP','DEPT')"

2.Data Pump
匯入 expdp

1)
expdp中獲取資料來源 exp.dmp
2)
複製某個資料庫中的一個schema到另一個資料庫中。
3)
在同一個資料庫中把一個schema中所有的物件複製到另一個schema中。

例子:

1)impdp
的資料來源是expdp 匯出來的DMP檔案
impdp ananda/abc123 directory=dpdata1 dumpfile=expCASES.dmp job_name=cases_import

2)
複製某個資料庫中的一個schema到另一個資料庫中。
--1.newwork_link
為目標資料庫建立的database_link
(
使用者test 需要grant exp_full_database to TEST; )
create public database link TOLINK
connect to TEST identified by oracle
using '(DESCRIPTION =  
  (ADDRESS_LIST =
    (ADDRESS = (PROTOCOL = TCP)(HOST = 10.0.20.199)(PORT = 1521))
  )
  (CONNECT_DATA =
    (SERVICE_NAME = orcl)
  )
)';

--2.impdp
在目標資料庫伺服器上執行 只能低版本向高版本imp
impdp network_link=TOLINK schemas=test remap_schema=test:link2


3)
在同一個資料庫中把一個schema中所有的物件複製到另一個schema中。

--1.
建立連線自己的database link:

create public database link system_self connect to system identified by "system" using 'orcl';

資料庫連結已建立。

--2.複製hr schematest schema:

impdp system/system network_link=system_self schemas=hr remap_schema=hr:test

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/27042095/viewspace-732576/,如需轉載,請註明出處,否則將追究法律責任。

相關文章