PLSQL_數據泵定參數批量導入多表Expdp/Impdp Parfile(案例)


2015-04-01 Created By BaoXinjian

一、摘要


PARFILE 可以把各種參數配置為一個文本鍵值形式的文件,該參數可以指定參數文件的位置。

Expdp命令可以調用Parfile文件,在Parfile里可以寫備份腳本,可以使用Query選項。

1. 如expdp.txt 內容如下:

USERID=orcldev/oracle directory=dackup_path dumpfile=orcldev_parfile.dmp logfile=orcldev_parfile.log TABLES='TAB_TEST' QUERY="WHERE TRAN_DATE=TO_DATE('2013-08-31','YYYY-MM-DD')"

執行方法:expdp parfile=expdp.txt 即可執行備份

使用parfile好處是使用query選項是不用使用轉義字符,如果將query參數放到外邊的話,需要將""進行轉義。

2. UNIX寫法:

expdp orcldev/oracle directory=backup_path dumpfile=2013.dmp logfile =2013.log schemas=orcldev INCLUDE=TABLE:\"IN \(\'TEST_A\',\'TEST_B\'\)\"  --在Unix系統執行是需要將單引號進行轉義操作,否則會報錯。

3. WINDOWS寫法:

expdp orcldev/oracle directory=backup_path dumpfile=2013.dmp logfile =2013.log schemas=orcldev INCLUDE=TABLE:"IN \('TEST_A','TEST_B')"

 

二、案例


案例: 通過在Par文件定義多張表匯總,導出和導入Dump文件

Step1. 創建Expdp的par文件gavin_dump_par_20150401.par

DIRECTORY=GAVIN_EXP_TMP DUMPFILE=gavin_dumpfile_20150401.dmp LOGFILE=gavin_dumpfile_exp_20150401.log TABLES=AP.AP_INVOICES_ALL, AP.AP_INVOICE_LINES_ALL, AP.AP_INVOICE_PAYMENTS_ALL

Step2. 在源端數據庫導入數據為dump文件

expdp / PARFILE=gavin_dump_par_20150401.par FLASHBACK_SCN=$(print "set pagesize 0 numwidth 30\nselect sys.dbms_flashback.get_system_change_number from dual;"|sqlplus -s    /)

Step3. 在目標數據庫導入dump文件

imp / DIRECTORY=GAVIN_IMP_TMP dumpfile=gavin_dumpfile_20150401.dmp logfile=gavin_dumpfile_imp_20150401.dmp.log

Step4. 查看日志和數據庫表確認數據是否已經導入成功

 

三、案例


 

較為復雜的初傳輸定義,需要定義文件的大小,並行度,並通過ksh調用nohup多批量處理

 

//創建目錄
CREATE OR REPLACE DIRECTORY DUMPFILE AS/u01/data/dump/exp/scripts’;

//執行參數
vi GAVIN_DATA_PARAMETER.par
DIRECTORY=dumpfile
DUMPFILE=GAVIN_DATA_SEQNO_0%U.dump,GAVIN_DATA_SEQNO_1%U.dmp
CONTEXT=ALL
FILESIZE=2G
PARALLEL=4
EXCLUDE=TRIGGER, FUNCTION, PACKAGE, PROCEDURE, SEQUNCEN, VIEW
LOGFILE=GAVIN_DATA_EXPDP.log
TABLES=AP.AP_INVOICES_ALL,
AP.AP_LINES_ALL

//並行執行
vi GAVIN_DATA_EXECUATE.ksh
export basedir=/u01/data/dump/imp/scripts
nohup expdp \'/ as sysdba\' PARFILE=$basedir/GAVIN_DATA_PARAMETER.par>/dev/null 2>&1 &

 

 

 

Thanks and Regards

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM