Oracle expdp impdp dump引數介紹

靜以致遠√團團發表於2016-04-08
一、建立邏輯目錄,該命令不會在作業系統建立真正的目錄,最好以system等管理員建立。
        create directory dpdata as '/opt';
二、檢視管理理員目錄(同時檢視作業系統是否存在,因為Oracle並不關心該目錄是否存在,如果不存在,則出錯)
        select * from dba_directories;
三、給scott使用者賦予在指定目錄的操作許可權,最好以system等管理員賦予。
        grant read,write on directory dpdata1 to scott;
 
四、匯出資料
1)按使用者導
        expdp scott/tiger@orcl schemas=scott dumpfile=expdp.dmp DIRECTORY=dpdata1;
2)並行程式parallel
        expdp scott/tiger@orcl directory=dpdata1 dumpfile=scott3.dmp parallel=40 job_name=scott3
3)按表名導
        expdp scott/tiger@orcl TABLES=emp,dept dumpfile=expdp.dmp DIRECTORY=dpdata1;
4)按查詢條件導
        expdp scott/tiger@orcl directory=dpdata1 dumpfile=expdp.dmp Tables=emp query='WHERE deptno=20';
5)按表空間導
        expdp system/manager DIRECTORY=dpdata1 DUMPFILE=tablespace.dmp TABLESPACES=temp,example;
6)導整個
        expdp system/manager DIRECTORY=dpdata1 DUMPFILE=full.dmp FULL=y;
 
五、還原資料
1)導到指定使用者下
        impdp scott/tiger DIRECTORY=dpdata1 DUMPFILE=expdp.dmp SCHEMAS=scott;
2)改變表的owner
        impdp system/manager DIRECTORY=dpdata1 DUMPFILE=expdp.dmp TABLES=scott.dept REMAP_SCHEMA=scott:system;
3)匯入表空間
        impdp system/manager DIRECTORY=dpdata1 DUMPFILE=tablespace.dmp TABLESPACES=example;
4)匯入資料庫
        impdb system/manager DIRECTORY=dump_dir DUMPFILE=full.dmp FULL=y;
5)追加資料
        impdp system/manager DIRECTORY=dpdata1 DUMPFILE=expdp.dmp SCHEMAS=system TABLE_EXISTS_ACTION
 
六、引數說明-----匯入impdp
1、TABBLE_EXISTS_ACTION={SKIP | APPEND | TRUNCATE | FRPLACE }
當設定該選項為SKIP時,匯入作業會跳過已存在表處理下一個物件;當設定為APPEND時,會追加資料,為TRUNCATE時,匯入作業會截斷表,然後 為其追加新資料;當設定為REPLACE時,匯入作業會刪除已存在表,重建表病追加資料,注意,TRUNCATE選項不適用與簇表和 NETWORK_LINK選項;
2、REMAP_SCHEMA
該選項用於將源方案的所有物件裝載到目標方案中:REMAP_SCHEMA=source_schema:target_schema
3、REMAP_TABLESPACE
將源表空間的所有物件匯入到目標表空間中:REMAP_TABLESPACE=source_tablespace:target:tablespace
4、REMAP_DATAFILE
該選項用於將源資料檔名轉變為目標資料檔名,在不同平臺之間搬移表空間時可能需要該選項.
REMAP_DATAFIEL=source_datafie:target_datafile
 
七、引數說明-----匯出expdp
1、CONTENT:該選項用於指定要匯出的內容.預設值為ALL
CONTENT={ALL | DATA_ONLY | METADATA_ONLY}
當設定CONTENT為ALL 時,將匯出物件定義及其所有資料.為DATA_ONLY時,只匯出物件資料,為METADATA_ONLY時,只匯出物件定義
2、DIRECTORY:指定轉儲檔案和日誌檔案所在的目錄:DIRECTORY=directory_object
3、EXCLUDE:該選項用於指定執行操作時釋放要排除物件型別或相關物件
        EXCLUDE=object_type[:name_clause] [,….]
        Object_type用於指定要排除的物件型別,name_clause用於指定要排除的具體物件.EXCLUDE和INCLUDE不能同時使用
        Expdp scott/tiger DIRECTORY=dump DUMPFILE=a.dup EXCLUDE=VIEW
4、INCLUDE:匯出時包含指定的型別
        (例:INCLUDE=TABLE_DATA,
             INCLUDE=TABLE:"LIKE 'TAB%'"
             INCLUDE=TABLE:”NOT LIKE ‘TAB%’”…)
             EXCLUDE:匯出時排除的資料型別(例:EXCLUDE=TABLE:EMP)
5、FILESIZE:指定匯出檔案的最大尺寸,預設為0,(表示檔案尺寸沒有限制)(單位為bytes).
6、JOB_NAME:此次匯出程式使用的名稱,方便跟蹤查詢(可選)
7、FLASHBACK_SCN:指定匯出特定SCN時刻的表資料
        FLASHBACK_SCN=scn_value:Scn_value用於標識SCN值.FLASHBACK_SCN和FLASHBACK_TIME不能同時使用
        Expdp scott/tiger DIRECTORY=dump DUMPFILE=a.dmp
        FLASHBACK_SCN=358523
8、FLASHBACK_TIME:指定匯出特定時間點的表資料:FLASHBACK_TIME=“TO_TIMESTAMP(time_value)”
        Expdp scott/tiger DIRECTORY=dump DUMPFILE=a.dmp FLASHBACK_TIME=“TO_TIMESTAMP(’25-08-2004 14:35:00’,’DD-MM-YYYY HH24:MI:SS’)”
9、TABLESPACE:指定一個表空間匯出.
10、QUERY=[schema.] [table_name:] query_clause
        Schema用於指定方案名,table_name用於指定表名,query_clause用於指定條件限制子句.QUERY選項不能與 CONNECT=METADATA_ONLY,EXTIMATE_ONLY,TRANSPORT_TABLESPACES等選項同時使用.
        Expdp scott/tiger directory=dump dumpfiel=a.dmp Tables=emp query=’WHERE deptno=20’
 
11、PARALLEL:並行操作: 指定執行匯出操作的並行程式個數,預設值為1
您可以透過PARALLEL 引數為匯出使用一個以上的執行緒來顯著地加速作業。每個執行緒建立一個單獨的轉儲檔案,因此引數dumpfile 應當擁有和並行度一樣多的專案。您可以指定萬用字元作為檔名,而不是顯式地輸入各個檔名,例如:
expdp ananda/abc123 tables=CASES directory=DPDATA1 dumpfile=expCASES_%U.dmp parallel=4 job_name=Cases_Export
注意:dumpfile 引數擁有一個萬用字元%U,它指示檔案將按需要建立,格式將為expCASES_nn.dmp,其中nn 從01 開始,然後按需要向上增加。
在並行模式下,狀態螢幕將顯示四個工作程式。(在預設模式下,只有一個程式是可見的)所有的工作程式同步取出資料,並在狀態螢幕上顯示它們的進度。
分離訪問資料檔案和轉儲目錄檔案系統的輸入/輸出通道是很重要的。否則,與維護Data Pump 作業相關的開銷可能超過並行執行緒的效益,並因此而降低效能。並行方式只有在表的數量多於並行值並且表很大時才是有效的。

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

相關文章