EXPDP/IMPDP 數據泵命令參數

數據泵導出實用程序提供了一種用於在 Oracle 數據庫之間傳輸
數據對象的機制。該實用程序可以使用以下命令進行調用:
示例: expdp scott/tiger DIRECTORY=dmpdir DUMPFILE=scott.dmp
您可以控制導出的運行方式。具體方法是: 在 'expdp' 命令後輸入
各種參數。要指定各參數, 請使用關鍵字:
格式:expdp KEYWORD=value 或 KEYWORD=(value1,value2,...,valueN)
示例: expdp scott/tiger DUMPFILE=scott.dmp DIRECTORY=dmpdir SCHEMAS=scott
或 TABLES=(T1:P1,T1:P2), 如果 T1 是分區表
USERID 必須是命令行中的第一個參數。
關鍵字說明 (默認)
---------------------------------------------------------------------------
ATTACH 連接到現有作業, 例如 ATTACH [=作業名]。
COMPRESSION 減小有效的轉儲文件內容的大小
關鍵字值爲: (METADATA_ONLY) 和 NONE。
CONTENT 指定要卸載的數據, 其中有效關鍵字爲:
(ALL), DATA_ONLY 和 METADATA_ONLY。
DIRECTORY 供轉儲文件和日誌文件使用的目錄對象。
DUMPFILE 目標轉儲文件 (expdat.dmp) 的列表,
例如 DUMPFILE=scott1.dmp, scott2.dmp, dmpdir:scott3.d
ENCRYPTION_PASSWORD 用於創建加密列數據的口令關鍵字。
ESTIMATE 計算作業估計值, 其中有效關鍵字爲:
(BLOCKS) 和 STATISTICS。
ESTIMATE_ONLY 在不執行導出的情況下計算作業估計值。
EXCLUDE 排除特定的對象類型, 例如 EXCLUDE=TABLE:EMP。
FILESIZE 以字節爲單位指定每個轉儲文件的大小。
FLASHBACK_SCN 用於將會話快照設置回以前狀態的 SCN。
FLASHBACK_TIME 用於獲取最接近指定時間的 SCN 的時間。
FULL 導出整個數據庫 (N)。
HELP 顯示幫助消息 (N)。
INCLUDE 包括特定的對象類型, 例如 INCLUDE=TABLE_DATA。
JOB_NAME 要創建的導出作業的名稱。
LOGFILE 日誌文件名 (export.log)。
NETWORK_LINK 鏈接到源系統的遠程數據庫的名稱。
NOLOGFIL 不寫入日誌文件 (N)。
PARALLEL 更改當前作業的活動 worker 的數目。
PARFILE 指定參數文件。
QUERY 用於導出表的子集的謂詞子句。
SAMPLE 要導出的數據的百分比;
SCHEMAS 要導出的方案的列表 (登錄方案)。
STATUS 在默認值 (0) 將顯示可用時的新狀態的情況下,
要監視的頻率 (以秒計) 作業狀態。
TABLES 標識要導出的表的列表 - 只有一個方案。
TABLESPACES 標識要導出的表空間的列表。
TRANSPORT_FULL_CHECK 驗證所有表的存儲段 (N)。
TRANSPORT_TABLESPACES 要從中卸載元數據的表空間的列表。
VERSION 要導出的對象的版本, 其中有效關鍵字爲:
(COMPATIBLE), LATEST 或任何有效的數據庫版本。
下列命令在交互模式下有效。
注: 允許使用縮寫
命令 說明
---------------------------------------------------------------------------
ADD_FILE 向轉儲文件集中添加轉儲文件。
CONTINUE_CLIENT 返回到記錄模式。如果處於空閒狀態, 將重新啓動作業。
EXIT_CLIENT 退出客戶機會話並使作業處於運行狀態。
FILESIZE 後續 ADD_FILE 命令的默認文件大小 (字節)。
HELP 總結交互命令。
KILL_JOB 分離和刪除作業。
PARALLEL 更改當前作業的活動 worker 的數目。
PARALLEL=<worker 的數目>。
START_JOB 啓動/恢復當前作業。
STATUS    在默認值 (0) 將顯示可用時的新狀態的情況下,
要監視的頻率 (以秒計) 作業狀態。
STATUS[=interval]
STOP_JOB 順序關閉執行的作業並退出客戶機。
STOP_JOB=IMMEDIATE 將立即關閉
數據泵作業。
Import: Release 10.2.0.1.0 - Production on 星期三, 12 11月, 2008 15:12:34
Copyright (c) 2003, 2005, Oracle.??All rights reserved.
數據泵導入實用程序提供了一種用於在 Oracle 數據庫之間傳輸
數據對象的機制。該實用程序可以使用以下命令進行調用:
示例: impdp scott/tiger DIRECTORY=dmpdir DUMPFILE=scott.dmp
您可以控制導入的運行方式。具體方法是: 在 'impdp' 命令後輸入
各種參數。要指定各參數, 請使用關鍵字:
格式:impdp KEYWORD=value 或 KEYWORD=(value1,value2,...,valueN)
示例: impdp scott/tiger DIRECTORY=dmpdir DUMPFILE=scott.dmp
USERID 必須是命令行中的第一個參數。
關鍵字說明 (默認)
------------------------------------------------------------------------------
ATTACH 連接到現有作業, 例如 ATTACH [=作業名]。
CONTENT 指定要加載的數據, 其中有效關鍵字爲:
(ALL), DATA_ONLY 和 METADATA_ONLY。
DIRECTORY供轉儲文件, 日誌文件和 sql 文件使用的目錄對象。
DUMPFILE要從 (expdat.dmp) 中導入的轉儲文件的列表,
例如 DUMPFILE=scott1.dmp, scott2.dmp, dmpdir:scott3.dmp。
ENCRYPTION_PASSWORD用於訪問加密列數據的口令關鍵字。
此參數對網絡導入作業無效。
ESTIMATE計算作業估計值, 其中有效關鍵字爲:
(BLOCKS) 和 STATISTICS。
EXCLUDE排除特定的對象類型, 例如 EXCLUDE=TABLE:EMP。
FLASHBACK_SCN用於將會話快照設置回以前狀態的 SCN。
FLASHBACK_TIME用於獲取最接近指定時間的 SCN 的時間。
FULL從源導入全部對象 (Y)。
HELP顯示幫助消息 (N)。
INCLUDE包括特定的對象類型, 例如 INCLUDE=TABLE_DATA。
JOB_NAME要創建的導入作業的名稱。
LOGFILE日誌文件名 (import.log)。
NETWORK_LINK鏈接到源系統的遠程數據庫的名稱。
NOLOGFILE不寫入日誌文件。
PARALLEL更改當前作業的活動 worker 的數目。
PARFILE指定參數文件。
QUERY用於導入表的子集的謂詞子句。
REMAP_DATAFILE在所有 DDL 語句中重新定義數據文件引用。
REMAP_SCHEMA 將一個方案中的對象加載到另一個方案。
REMAP_TABLESPACE將表空間對象重新映射到另一個表空間。
REUSE_DATAFILES如果表空間已存在, 則將其初始化 (N)。
SCHEMAS要導入的方案的列表。
SKIP_UNUSABLE_INDEXES 跳過設置爲無用索引狀態的索引。
SQLFILE將所有的 SQL DDL 寫入指定的文件。
STATUS 在默認值 (0) 將顯示可用時的新狀態的情況下,
要監視的頻率 (以秒計) 作業狀態。
STREAMS_CONFIGURATION 啓用流元數據的加載
TABLE_EXISTS_ACTION導入對象已存在時執行的操作。
有效關鍵字: (SKIP), APPEND, REPLACE 和 TRUNCATE。
TABLES 標識要導入的表的列表。
TABLESPACES標識要導入的表空間的列表。
TRANSFORM 要應用於適用對象的元數據轉換。
OID 和 PCTSPACE。
TRANSPORT_DATAFILES按可傳輸模式導入的數據文件的列表。
TRANSPORT_FULL_CHECK 驗證所有表的存儲段 (N)。
TRANSPORT_TABLESPACES 要從中加載元數據的表空間的列表。
 僅在 NETWORK_LINK 模式導入操作中有效。
VERSION 要導出的對象的版本, 其中有效關鍵字爲:
 COMPATIBLE), LATEST 或任何有效的數據庫版本。
 僅對 NETWORK_LINK 和 SQLFILE 有效。
下列命令在交互模式下有效。
注: 允許使用縮寫
命令 說明 (默認)
------------------------------------------------------------------------------
CONTINUE_CLIENT 返回到記錄模式。如果處於空閒狀態, 將重新啓動作業。
EXIT_CLIENT 退出客戶機會話並使作業處於運行狀態。
HELP 總結交互命令。
KILL_JOB 分離和刪除作業。
PARALLEL 更改當前作業的活動 worker 的數目。
PARALLEL=<worker 的數目>。
START_JOB啓動/恢復當前作業。
 START_JOB=SKIP_CURRENT 在開始作業之前將跳過
 作業停止時執行的任意操作。
STATUS 在默認值 (0) 將顯示可用時的新狀態的情況下,
 要監視的頻率 (以秒計) 作業狀態。
 STATUS[=interval]
STOP_JOB順序關閉執行的作業並退出客戶機。
 STOP_JOB=IMMEDIATE 將立即關閉
 數據泵作業。
Oracle Database 10g引入了最新的數據泵(Data Dump)技術,使DBA或開發人員可以將數據庫元數據(對象定義)和數據快速移動到另一個oracle數據庫中.
數據泵導出導入(EXPDP和IMPDP)的作用
1、實現邏輯備份和邏輯恢復.
2、在數據庫用戶之間移動對象.
3、在數據庫之間移動對象
4、實現表空間搬移.? ?? ? 數據泵導出導入與傳統導出導入的區別:
在10g之前,傳統的導出和導入分別使用EXP工具和IMP工具,從10g開始,不僅保留了原有的EXP和IMP工具,還提供了數據泵導出導入工具EXPDP和IMPDP.使用EXPDP和IMPDP時應該注意的事項;
EXP和IMP是客戶段工具程序,它們既可以在客戶端使用,也可以在服務器段使用.
EXPDP和IMPDP是服務端的工具程序,他們只能在ORACLE服務端使用,不能在客戶端使用
IMP只適用於EXP導出文件,不適用於EXPDP導出文件;IMPDP只適用於EXPDP導出文件,而不適用於EXP導出文件.
數據泵導出包括導出表,導出方案,導出表空間,導出數據庫4種方式.
EXPDP命令行選項
1. ATTACH
該選項用於在客戶會話與已存在導出作用之間建立關聯.語法如下
ATTACH=[schema_name.]job_name
Schema_name用於指定方案名,job_name用於指定導出作業名.注意,如果使用ATTACH選項,在命令行除了連接字符串和ATTACH選項外,不能指定任何其他選項,示例如下:
Expdp scott/tiger ATTACH=scott.export_job
2. CONTENT
該選項用於指定要導出的內容.默認值爲ALL
CONTENT={ALL | DATA_ONLY | METADATA_ONLY}
當設置CONTENT爲ALL 時,將導出對象定義及其所有數據.爲DATA_ONLY時,只導出對象數據,爲METADATA_ONLY時,只導出對象定義
Expdp scott/tiger DIRECTORY=dump DUMPFILE=a.dump
CONTENT=METADATA_ONLY
3. DIRECTORY
指定轉儲文件和日誌文件所在的目錄
DIRECTORY=directory_object
Directory_object用於指定目錄對象名稱.需要注意,目錄對象是使用CREATE DIRECTORY語句建立的對象,而不是OS 目錄
Expdp scott/tiger DIRECTORY=dump DUMPFILE=a.dump
建立目錄:
CREATE DIRECTORY dump as ‘d:dump’;
查詢創建了那些子目錄:
SELECT * FROM dba_directories;
4. DUMPFILE
用於指定轉儲文件的名稱,默認名稱爲expdat.dmp
DUMPFILE=[directory_object:]file_name [,….]
Directory_object用於指定目錄對象名,file_name用於指定轉儲文件名.需要注意,如果不指定directory_object,導出工具會自動使用DIRECTORY選項指定的目錄對象
Expdp scott/tiger DIRECTORY=dump1 DUMPFILE=dump2:a.dmp
5. ESTIMATE
指定估算被導出表所佔用磁盤空間分方法.默認值是BLOCKS
EXTIMATE={BLOCKS | STATISTICS}
設置爲BLOCKS時,oracle會按照目標對象所佔用的數據塊個數乘以數據塊尺寸估算對象佔用的空間,設置爲STATISTICS時,根據最近統計值估算對象佔用空間
Expdp scott/tiger TABLES=emp ESTIMATE=STATISTICS
DIRECTORY=dump DUMPFILE=a.dump
6. EXTIMATE_ONLY
指定是否只估算導出作業所佔用的磁盤空間,默認值爲N
EXTIMATE_ONLY={Y | N}
設置爲Y時,導出作用只估算對象所佔用的磁盤空間,而不會執行導出作業,爲N時,不僅估算對象所佔用的磁盤空間,還會執行導出操作.
Expdp scott/tiger ESTIMATE_ONLY=y NOLOGFILE=y
7. EXCLUDE
該選項用於指定執行操作時釋放要排除對象類型或相關對象
EXCLUDE=object_type[:name_clause] [,….]
Object_type用於指定要排除的對象類型,name_clause用於指定要排除的具體對象.EXCLUDE和INCLUDE不能同時使用
Expdp scott/tiger DIRECTORY=dump DUMPFILE=a.dup EXCLUDE=VIEW
8. FILESIZE
指定導出文件的最大尺寸,默認爲0,(表示文件尺寸沒有限制)
9. 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
10. 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’)”
11. FULL
指定數據庫模式導出,默認爲N
FULL={Y | N}
爲Y時,標識執行數據庫導出.
12. HELP
指定是否顯示EXPDP命令行選項的幫助信息,默認爲N
當設置爲Y時,會顯示導出選項的幫助信息.
Expdp help=y
13. INCLUDE
指定導出時要包含的對象類型及相關對象
INCLUDE = object_type[:name_clause] [,… ]
14. JOB_NAME
指定要導出作用的名稱,默認爲SYS_XXX
JOB_NAME=jobname_string
15. LOGFILE
指定導出日誌文件文件的名稱,默認名稱爲export.log
LOGFILE=[directory_object:]file_name
Directory_object用於指定目錄對象名稱,file_name用於指定導出日誌文件名.如果不指定directory_object.導出作用會自動使用DIRECTORY的相應選項值.
Expdp scott/tiger DIRECTORY=dump DUMPFILE=a.dmp logfile=a.log
16. NETWORK_LINK
指定數據庫鏈名,如果要將遠程數據庫對象導出到本地例程的轉儲文件中,必須設置該選項.
17. NOLOGFILE
該選項用於指定禁止生成導出日誌文件,默認值爲N.
18. PARALLEL
指定執行導出操作的並行進程個數,默認值爲1
19. PARFILE
指定導出參數文件的名稱
PARFILE=[directory_path] file_name
20. QUERY
用於指定過濾導出數據的where條件
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’
21. SCHEMAS
該方案用於指定執行方案模式導出,默認爲當前用戶方案.
22. STATUS
指定顯示導出作用進程的詳細狀態,默認值爲0
23. TABLES
指定表模式導出
TABLES=[schema_name.]table_name[artition_name][,…]
Schema_name用於指定方案名,table_name用於指定導出的表名,partition_name用於指定要導出的分區名.
24. TABLESPACES
指定要導出表空間列表
25. TRANSPORT_FULL_CHECK
該選項用於指定被搬移表空間和未搬移表空間關聯關係的檢查方式,默認爲N.
當設置爲Y時,導出作用會檢查表空間直接的完整關聯關係,如果表空間所在表空間或其索引所在的表空間只有一個表空間被搬移,將顯示錯誤信息.當設置爲N時,導出作用只檢查單端依賴,如果搬移索引所在表空間,但未搬移表所在表空間,將顯示出錯信息,如果搬移表所在表空間,未搬移索引所在表空間,則不會顯示錯誤信息.
26. TRANSPORT_TABLESPACES
指定執行表空間模式導出
27. VERSION
指定被導出對象的數據庫版本,默認值爲COMPATIBLE.
VERSION={COMPATIBLE | LATEST | version_string}
爲COMPATIBLE時,會根據初始化參數COMPATIBLE生成對象元數據;爲LATEST時,會根據數據庫的實際版本生成對象元數據.version_string用於指定數據庫版本字符串.調用EXPDP
使用EXPDP工具時,其轉儲文件只能被存放在DIRECTORY對象對應的OS目錄中,而不能直接指定轉儲文件所在的OS目錄.因此,使用EXPDP工具時,必須首先建立DIRECTORY對象.並且需要爲數據庫用戶授予使用DIRECTORY對象權限

.
CREATE DIRECTORY dump dir AS ‘DUMP’;
GRANT READ, WIRTE ON DIRECTORY dump_dir TO scott;
1、導出表
Expdp scott/tiger DIRECTORY=dump_dir DUMPFILE=tab.dmp TABLES=dept,emp
2、導出方案
Expdp scott/tiger DIRECTORY=dump_dir DUMPFILE=schema.dmp
SCHEMAS=system,scott
3、導出表空間
Expdp system/manager DIRECTORY=dump_dir DUMPFILE=tablespace.dmp
TABLESPACES=user01,user02
4、導出數據庫
Expdp system/manager DIRECTORY=dump_dir DUMPFILE=full.dmp FULL=Y
使用IMPDP
IMPDP命令行選項與EXPDP有很多相同的,不同的有:
1、REMAP_DATAFILE
該選項用於將源數據文件名轉變爲目標數據文件名,在不同平臺之間搬移表空間時可能需要該選項.
REMAP_DATAFIEL=source_datafie:target_datafile
2、REMAP_SCHEMA
該選項用於將源方案的所有對象裝載到目標方案中.
REMAP_SCHEMA=source_schema:target_schema
3、REMAP_TABLESPACE
將源表空間的所有對象導入到目標表空間中
REMAP_TABLESPACE=source_tablespace:target:tablespace
4、REUSE_DATAFILES
該選項指定建立表空間時是否覆蓋已存在的數據文件.默認爲N
REUSE_DATAFIELS={Y | N}
5、SKIP_UNUSABLE_INDEXES
指定導入是是否跳過不可使用的索引,默認爲N
6、SQLFILE
指定將導入要指定的索引DDL操作寫入到SQL腳本中
SQLFILE=[directory_object:]file_name
Impdp scott/tiger DIRECTORY=dump DUMPFILE=tab.dmp SQLFILE=a.sql
7、STREAMS_CONFIGURATION
指定是否導入流元數據(Stream Matadata),默認值爲Y.
8、TABLE_EXISTS_ACTION
該選項用於指定當表已經存在時導入作業要執行的操作,默認爲SKIP
TABBLE_EXISTS_ACTION={SKIP | APPEND | TRUNCATE | FRPLACE }
當設置該選項爲SKIP時,導入作業會跳過已存在表處理下一個對象;當設置爲APPEND時,會追加數據,爲TRUNCATE時,導入作業會截斷表,然後爲其追加新數據;當設置爲REPLACE時,導入作業會刪除已存在表,重建表病追加數據,注意,TRUNCATE選項不適用與簇表和NETWORK_LINK選項
9、TRANSFORM
該選項用於指定是否修改建立對象的DDL語句
TRANSFORM=transform_name:value[bject_type]
Transform_name用於指定轉換名,其中SEGMENT_ATTRIBUTES用於標識段屬性(物理屬性,存儲屬性,表空間,日誌等信息),STORAGE用於標識段存儲屬性,VALUE用於指定是否包含段屬性或段存儲屬性,object_type用於指定對象類型.
Impdp scott/tiger directory=dump dumpfile=tab.dmp
Transform=segment_attributes:n:table
10、TRANSPORT_DATAFILES
該選項用於指定搬移空間時要被導入到目標數據庫的數據文件
TRANSPORT_DATAFILE=datafile_name
Datafile_name用於指定被複制到目標數據庫的數據文件
Impdp system/manager DIRECTORY=dump DUMPFILE=tts.dmp
TRANSPORT_DATAFILES=’/user01/data/tbs1.f’調用IMPDP
1、導入表
Impdp scott/tiger DIRECTORY=dump_dir DUMPFILE=tab.dmp TABLES=dept,emp
Impdp system/manage DIRECTORY=dump_dir DUMPFILE=tab.dmp TABLES=scott.dept,scott.emp
REMAP_SCHEMA=SCOTT:SYSTEM
第一種方法表示將DEPT和EMP表導入到SCOTT方案中,第二種方法表示將DEPT和EMP表導入的SYSTEM? ???
EXPDP和IMPDP使用說明
Oracle Database 10g引入了最新的數據泵(Data Dump)技術,使DBA或開發人員可以將數據庫元數據(對象定義)和數據快速移動到另一個oracle數據庫中.
數據泵導出導入(EXPDP和IMPDP)的作用
1,實現邏輯備份和邏輯恢復.
2,在數據庫用戶之間移動對象.
3,在數據庫之間移動對象
4,實現表空間搬移.
數據泵導出導入與傳統導出導入的區別
在10g之前,傳統的導出和導入分別使用EXP工具和IMP工具,從10g開始,不僅保留了原有的EXP和IMP工具,還提供了數據泵導出導入工具EXPDP和IMPDP.使用EXPDP和IMPDP時應該注意的事項;
EXP和IMP是客戶段工具程序,它們既可以在可以段使用,也可以在服務段使用.
EXPDP和IMPDP是服務端的工具程序,他們只能在ORACLE服務端使用,不能在客戶端使用
IMP只適用於EXP導出文件,不適用於EXPDP導出文件;IMPDP只適用於EXPDP導出文件,而不適用於EXP導出文件.
數據泵導出包括導出表,導出方案,導出表空間,導出數據庫4種方式.
EXPDP命令行選項
1. ATTACH
該選項用於在客戶會話與已存在導出作用之間建立關聯.語法如下
ATTACH=[schema_name.]job_name
Schema_name用於指定方案名,job_name用於指定導出作業名.注意,如果使用ATTACH選項,在命令行除了連接字符串和ATTACH選項外,不能指定任何其他選項,示例如下:
Expdp scott/tiger ATTACH=scott.export_job
2. CONTENT
該選項用於指定要導出的內容.默認值爲ALL
CONTENT={ALL | DATA_ONLY | METADATA_ONLY}
當設置CONTENT爲ALL 時,將導出對象定義及其所有數據.爲DATA_ONLY時,只導出對象數據,爲METADATA_ONLY時,只導出對象定義
Expdp scott/tiger DIRECTORY=dump DUMPFILE=a.dump
CONTENT=METADATA_ONLY
3. DIRECTORY
指定轉儲文件和日誌文件所在的目錄
DIRECTORY=directory_object
Directory_object用於指定目錄對象名稱.需要注意,目錄對象是使用CREATE DIRECTORY語句建立的對象,而不是OS 目錄
Expdp scott/tiger DIRECTORY=dump DUMPFILE=a.dump
建立目錄:
CREATE DIRECTORY dump as ‘d:dump’;
查詢創建了那些子目錄:
SELECT * FROM dba_directories;
4. DUMPFILE
用於指定轉儲文件的名稱,默認名稱爲expdat.dmp
DUMPFILE=[directory_object:]file_name [,….]
Directory_object用於指定目錄對象名,file_name用於指定轉儲文件名.需要注意,如果不指定directory_object,導出工具會自動使用DIRECTORY選項指定的目錄對象
Expdp scott/tiger DIRECTORY=dump1 DUMPFILE=dump2:a.dmp
5. ESTIMATE
指定估算被導出表所佔用磁盤空間分方法.默認值是BLOCKS
EXTIMATE={BLOCKS | STATISTICS}
設置爲BLOCKS時,oracle會按照目標對象所佔用的數據塊個數乘以數據塊尺寸估算對象佔用的空間,設置爲STATISTICS時,根據最近統計值估算對象佔用空間
Expdp scott/tiger TABLES=emp ESTIMATE=STATISTICS
DIRECTORY=dump DUMPFILE=a.dump
6. EXTIMATE_ONLY
指定是否只估算導出作業所佔用的磁盤空間,默認值爲N
EXTIMATE_ONLY={Y | N}
設置爲Y時,導出作用只估算對象所佔用的磁盤空間,而不會執行導出作業,爲N時,不僅估算對象所佔用的磁盤空間,還會執行導出操作.
Expdp scott/tiger ESTIMATE_ONLY=y NOLOGFILE=y
7. EXCLUDE
該選項用於指定執行操作時釋放要排除對象類型或相關對象
EXCLUDE=object_type[:name_clause] [,….]
Object_type用於指定要排除的對象類型,name_clause用於指定要排除的具體對象.EXCLUDE和INCLUDE不能同時使用
Expdp scott/tiger DIRECTORY=dump DUMPFILE=a.dup EXCLUDE=VIEW
8. FILESIZE
指定導出文件的最大尺寸,默認爲0,(表示文件尺寸沒有限制)
9. 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
10. 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’)”
11. FULL
指定數據庫模式導出,默認爲N
FULL={Y | N}
爲Y時,標識執行數據庫導出.
12. HELP
指定是否顯示EXPDP命令行選項的幫助信息,默認爲N
當設置爲Y時,會顯示導出選項的幫助信息.
Expdp help=y
13. INCLUDE
指定導出時要包含的對象類型及相關對象
INCLUDE = object_type[:name_clause] [,… ]
14. JOB_NAME
指定要導出作用的名稱,默認爲SYS_XXX
JOB_NAME=jobname_string
15. LOGFILE
指定導出日誌文件文件的名稱,默認名稱爲export.log
LOGFILE=[directory_object:]file_name
Directory_object用於指定目錄對象名稱,file_name用於指定導出日誌文件名.如果不指定directory_object.導出作用會自動使用DIRECTORY的相應選項值.
Expdp scott/tiger DIRECTORY=dump DUMPFILE=a.dmp logfile=a.log
16. NETWORK_LINK
指定數據庫鏈名,如果要將遠程數據庫對象導出到本地例程的轉儲文件中,必須設置該選項.
17. NOLOGFILE
該選項用於指定禁止生成導出日誌文件,默認值爲N.
18. PARALLEL
指定執行導出操作的並行進程個數,默認值爲1
19. PARFILE
指定導出參數文件的名稱
PARFILE=[directory_path] file_name
20. QUERY
用於指定過濾導出數據的where條件
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’
21. SCHEMAS
該方案用於指定執行方案模式導出,默認爲當前用戶方案.
22. STATUS
指定顯示導出作用進程的詳細狀態,默認值爲0
23. TABLES
指定表模式導出
TABLES=[schema_name.]table_name[artition_name][,…]
Schema_name用於指定方案名,table_name用於指定導出的表名,partition_name用於指定要導出的分區名.
24. TABLESPACES
指定要導出表空間列表
25. TRANSPORT_FULL_CHECK
該選項用於指定被搬移表空間和未搬移表空間關聯關係的檢查方式,默認爲N.
當設置爲Y時,導出作用會檢查表空間直接的完整關聯關係,如果表空間所在表空間或其索引所在的表空間只有一個表空間被搬移,將顯示錯誤信息.當設置爲N時,導出作用只檢查單端依賴,如果搬移索引所在表空間,但未搬移表所在表空間,將顯示出錯信息,如果搬移表所在表空間,未搬移索引所在表空間,則不會顯示錯誤信息.
26. TRANSPORT_TABLESPACES
指定執行表空間模式導出
27. VERSION
指定被導出對象的數據庫版本,默認值爲COMPATIBLE.
VERSION={COMPATIBLE | LATEST | version_string}
爲COMPATIBLE時,會根據初始化參數COMPATIBLE生成對象元數據;爲LATEST時,會根據數據庫的實際版本生成對象元數據.version_string用於指定數據庫版本字符串.
調用EXPDP
使用EXPDP工具時,其轉儲文件只能被存放在DIRECTORY對象對應的OS目錄中,而不能直接指定轉儲文件所在的OS目錄.因此,使用EXPDP工具時,必須首先建立DIRECTORY對象.並且需要爲數據庫用戶授予使用DIRECTORY對象權限.
CREATE DIRECTORY dump dir AS ‘DUMP’;
GRANT READ, WIRTE ON DIRECTORY dump_dir TO scott;
1,導出表
Expdp scott/tiger DIRECTORY=dump_dir DUMPFILE=tab.dmp TABLES=dept,emp
2,導出方案
Expdp scott/tiger DIRECTORY=dump_dir DUMPFILE=schema.dmp
SCHEMAS=system,scott
3.導出表空間
Expdp system/manager DIRECTORY=dump_dir DUMPFILE=tablespace.dmp
TABLESPACES=user01,user02
4,導出數據庫
Expdp system/manager DIRECTORY=dump_dir DUMPFILE=full.dmp FULL=Y
使用IMPDP
IMPDP命令行選項與EXPDP有很多相同的,不同的有:
1,REMAP_DATAFILE
該選項用於將源數據文件名轉變爲目標數據文件名,在不同平臺之間搬移表空間時可能需要該選項.
REMAP_DATAFIEL=source_datafie:target_datafile
2,REMAP_SCHEMA
該選項用於將源方案的所有對象裝載到目標方案中.
REMAP_SCHEMA=source_schema:target_schema
3,REMAP_TABLESPACE
將源表空間的所有對象導入到目標表空間中
REMAP_TABLESPACE=source_tablespace:target:tablespace
4.REUSE_DATAFILES
該選項指定建立表空間時是否覆蓋已存在的數據文件.默認爲N
REUSE_DATAFIELS={Y | N}
5.SKIP_UNUSABLE_INDEXES
指定導入是是否跳過不可使用的索引,默認爲N
6,SQLFILE
指定將導入要指定的索引DDL操作寫入到SQL腳本中
SQLFILE=[directory_object:]file_name
Impdp scott/tiger DIRECTORY=dump DUMPFILE=tab.dmp SQLFILE=a.sql
7.STREAMS_CONFIGURATION
指定是否導入流元數據(Stream Matadata),默認值爲Y.
8,TABLE_EXISTS_ACTION
該選項用於指定當表已經存在時導入作業要執行的操作,默認爲SKIP
TABBLE_EXISTS_ACTION={SKIP | APPEND | TRUNCATE | FRPLACE }
當設置該選項爲SKIP時,導入作業會跳過已存在表處理下一個對象;當設置爲APPEND時,會追加數據,爲TRUNCATE時,導入作業會截斷表,然後爲其追加新數據;當設置爲REPLACE時,導入作業會刪除已存在表,重建表病追加數據,注意,TRUNCATE選項不適用與簇表和NETWORK_LINK選項
9.TRANSFORM
該選項用於指定是否修改建立對象的DDL語句
TRANSFORM=transform_name:value[bject_type]
Transform_name用於指定轉換名,其中SEGMENT_ATTRIBUTES用於標識段屬性(物理屬性,存儲屬性,表空間,日誌等信息),STORAGE用於標識段存儲屬性,VALUE用於指定是否包含段屬性或段存儲屬性,object_type用於指定對象類型.
Impdp scott/tiger directory=dump dumpfile=tab.dmp
Transform=segment_attributes:n:table
10.TRANSPORT_DATAFILES
該選項用於指定搬移空間時要被導入到目標數據庫的數據文件
TRANSPORT_DATAFILE=datafile_name
Datafile_name用於指定被複制到目標數據庫的數據文件
Impdp system/manager DIRECTORY=dump DUMPFILE=tts.dmp
TRANSPORT_DATAFILES=’/user01/data/tbs1.f’
調用IMPDP
1, 導入表
Impdp scott/tiger DIRECTORY=dump_dir DUMPFILE=tab.dmp
TABLES=dept,emp
Impdp system/manage DIRECTORY=dump_dir DUMPFILE=tab.dmp
TABLES=scott.dept,scott.emp REMAP_SCHEMA=SCOTT:SYSTEM
第一種方法表示將DEPT和EMP表導入到SCOTT方案中,第二種方法表示將DEPT和EMP表導入的SYSTEM方案中.
注意,如果要將表導入到其他方案中,必須指定REMAP SCHEMA選項.
2,導入方案
Impdp scott/tiger DIRECTORY=dump_dir DUMPFILE=schema.dmp
SCHEMAS=scott
Impdp system/manager DIRECTORY=dump_dir DUMPFILE=schema.dmp
SCHEMAS=scott REMAP_SCHEMA=scott:system
3,導入表空間
Impdp system/manager DIRECTORY=dump_dir DUMPFILE=tablespace.dmp
TABLESPACES=user01
4,導入數據庫
Impdp system/manager DIRECTORY=dump_dir DUMPFILE=full.dmp FULL=y
10G數據泵加載命令expdp/impdp的參數說明
在10.2.0.1版本中默認已建立一些directory。
SQL> select * from v$version;
BANNER
---------------------------------------------------------------------------------------------
Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Prod
PL/SQL Release 10.2.0.1.0 - Production
CORE 10.2.0.1.0 Production
TNS for Linux: Version 10.2.0.1.0 - Production
NLSRTL Version 10.2.0.1.0 - Production
SQL> select * from dba_directories;
OWNER DIRECTORY_NAME DIRECTORY_PATH
---------- --------------- ------------------------------------------------------------
SYS ADMIN_DIR /ade/aime_10.2_lnx_push/oracle/md/admin
SYS SUBDIR /home/oracle/product/10.2.0/demo/schema/order_entry//2002/Sep
SYS DATA_FILE_DIR /home/oracle/product/10.2.0/demo/schema/sales_history/
SYS WORK_DIR /ade/aime_10.2_lnx_push/oracle/work
SYS LOG_FILE_DIR /home/oracle/product/10.2.0/demo/schema/log/
SYS MEDIA_DIR /home/oracle/product/10.2.0/demo/schema/product_media/
SYS XMLDIR /home/oracle/product/10.2.0/demo/schema/order_entry/
SYS DATA_PUMP_DIR /home/oracle/product/10.2.0/rdbms/log/
8 rows selected.
SQL> create directory data_pump_dir1 as '/home/oracle/datapump1';
Directory created.
SQL> create directory data_pump_dir2 as '/home/oracle/datapump2';
Directory created.
--建立用戶賦予目錄權限
SQL> grant connect,resource to susan identified by susan;
Grant succeeded.
SQL> grant read,write on directory data_pump_dir1 to susan;
Grant succeeded.
SQL> grant read,write on directory data_pump_dir2 to susan;
Grant succeeded.
--賦予expdp,impdp的權限
SQL> grant exp_full_database,imp_full_database to susan;
Grant succeeded.
EXPDP
參數說明:
1.與文件和目錄有關的參數:
包括:DIRECTORY,DUMPIFLE,FILESIZE,PARFILE,LOGIFLE,NOLOGIFLE和COMPRESSION。
DIRECTORY參數用法:
--直接使用DIRECTORY參數,如
expdp susan/susan directory=data_dump_dir1 dumpfile=susan01.dmp
--DIRECTORY:FILE表示法,如
expdp susan/susan dumpfile=data_pump_dir1:test1.dmp,data_pump_dir2:test2.dmp;

expdp susan/susan dumpfile=data_pump_dir1:test1.dmp,data_pump_dir2:test2.dmp logfile=data_pump_dir1:test1.log
--DATA_PUMP_DIR環境變量:
export DATA_PUMP_DIR=DATA_PUMP_DIR1 --這裏我名字必須大寫,就奇怪了,小寫還不行。
expdp susan/susan dumpfile=susan.dmp
DIRECTORY的優先次序:文件有關的參數(logfile,dumpfile),這種情況下目錄對象與文件名用冒號(:)分開
>
指定的DIRECTORY參數
>
DATA_DUMP_DIR環境變量
>
默認的基於服務器的目錄對象DATA_DUMP_DIR
DUMPFILE參數的用法:
代替exp的file參數,可以用%U變量擴展成多個文件名,用','號也可以提供多個文件。
FILESIZE參數的用法:
指定轉儲文件的尺寸,默認以字節爲單位,如轉儲文件到達此限制,作業將停止
PARFILE參數的用法:
即參數文件來代替命令行來直接輸入
LOGFILE和NOLOGFILE
不指定logfile會自動創建一個名爲export.log的日誌文件,用nologfile可以禁止日誌產生。
COMMPRESSION參數:
壓縮與否,值爲METADATA_ONLY或NONE,沒有辦法來指定壓縮導出數據本身
2.與導出方式有關的參數:
包括:FULL,SCHEMAS,TABLES,TABLESPACE,TRANSPORT_TABLESPACE和TRANSPORT_FULL_CHECK
其它參數都好理解,TRANSPORT_FULL_CHECK參數是當導出作業時將檢查數據的相關性,如值爲Y,檢查不通過時導出也失
敗。
3.導出過濾參數:
CONTENT:有三個值:ALL,DATA_ONLY和METADATA_ONLY
EXCLUDE和INCLUDE:此兩參數互斥,使用格式爲 EXCLUDE/INCLUDE=object_type[:name_clause],如exclude=TABLE:"LIKE 'EMP%'"或
直接exclude=index
expdp susan/susan dumpfile=su.dmp exclude=SCHEMA:"='SAN'" --注意雙引號要用斜槓轉義
QUERY:如QUERY=OE.ORDER:"WHERE ORDER_ID > 1000000"
SAMPLE:允許指定範圍從0.000001到100的一個百分數,格式爲[[schema_name.]table_name]sample_percent
4.估算參數:
ESTIMATE:值可爲BLOCKS或STATISTICS
BLOCKS是指根據塊的空間估算其導出作類的空間需求。
STATISTICS是根據每個表計算過的統計數據來估算空間需求,當表剛分析過後,用此參數纔會較準。
ESTIMATE_ONLY:值爲Y或N,使用此參數可以先估算導出作業將需要的空間,而不啓動導出作業。
5.網絡鏈接參數
NETWORK_LINK:可以從服務器中啓動一個導出作業,將遠程數據庫的數據導出到你啓動數據泵取導出作業的轉儲文件中。
6.加密參數:
ENCRYPTION_PASSWORD:對轉儲的文件進行加密
7.與作業有關的參數
JOB_NAME:給導出作業提供一個明確的名字,否則oracle會分配一個默認名字
STATUS:如運行長時間的導出作業,此參數可以按照所指定的時間間隔提供更新的狀態。單位是秒,如果想每分鐘顯示導出狀態就用
status=60
FLASHBACK_SCN,FLASHBACK_TIME
PARALLEL:使用多線程
ATTACH:將你的數據泵取客戶機會話加入到一個運行的作業中,並使你進行交互方式。此參數只能與用戶名/密碼組合一起使用。
8.交互方式下的導出命令
ADD_FILE:給轉儲文件集合增加一個轉儲文件
CONTINUE_CLIENT:如果作業暫停的話重新啓動
EXIT_CLIETN:退出客戶機會話並恢復作業運行
HELP:幫助命令
KILL_JOB:釋放並刪除作業
PARALLEL:改變當前作業的活動工進程的數量
START_JOB:啓動或重新恢復當前的作業
STATUS:設置作業監控的頻率(以秒爲單位)
STOP_JOB:關閉作業的執行
IMPDP
參數說明:
1.與文件和目錄有關的參數:
包括:DIRECTORY,DUMPIFLE,PARFILE,LOGIFLE,NOLOGIFLE和EXPDP相同,另有一個SQLFILE,此參數類似於舊的IMP的INDEXFILE參數,用
在希望從轉儲文件中提取DDL。
如:impdp susan/susan directory=data_pump_dir2 dumpfile=test2.dmp sqlfile=data_pump_dir1:test2.sql schemas=susan
就是指將屬於 susan模式的所有DDL寫入位於data_pump_dir1的test2.sql文件中,當然在data_pump_dir2中必須有test2.dmp的轉儲文
件。
另一個重要的與文件有關的參數是REUSE_DATAFILES,此參數告訴數據泵取在導入過程中是否應該使用已有的數據文件來創建表空間,
如果指定爲Y,則數據泵取導入程序將改寫已有的數據文件。
2.過濾參數:
INCLUDE,EXCLUDE的用法與EXPDP相同
注意,如果使用CONTENT=DATA_ONLY時,則在導入過程中不用使用EXCLUDE和INCLUDE參數。
IMPDP可以使用QUERY參數在導入中過濾數據(以前只有在EXP中過濾數據,IMP不行).
可以使用TABLE_EXISTS_ACTINS參數告訴ORACLE當表已經存在時做什麼,提供4個不同的值:
--SKIP(默認),跳過
--APPEND,將值追加到表中
--TRUNCATE,已truncate再重新裝載新值
--REPLACE,重新創建此表,並重新裝載
3.與作業有關的參數:
JOB_NAME,STATUS,PARALLEL參數與EXPDP相同
4.與導入方式有關的參數
FULL,SCHEMAS,TABLES,TABLESPACE,TRANSPORT_TABLESPACE和TRANSPORT_FULL_CHECK的用法和EXPDP差不多如使用NETWORK_LINK參數,
則TRANSPORT_FULL_CHECK只適合於表空間的傳送。
5.重新映射參數
REMAP_SCHEMA,REMAP_DATEFILE,REMAP_TABLESPACE
儘管在exp/imp中有重新映射的能力(FROMUSER/TOUSER),但是不能重新映射數據文件和表空間
如:impdp system/manager dumpfile=newdump.dmp remap_schema=hre
6.轉換參數
TRANSFORM,此參數的語法:TRANSFORM = transform_name:value[bject_type]
其中transform_name有四個選項:segment attributes,storage,oid,pctspace
--segment attributes:段屬性包括物理屬性、存儲屬性、表空間和日誌。
--storage:可以使用storage=y(默認)說明只取對象的存儲屬性作爲導入作業的一部分。
--oid:如果指定oid=Y(默認),則在導入過程中將分配一個新的oid給對象表。
--pctspace:通過提供一個正數作爲該轉換的值,可以增加對象的分配尺寸,並且數據文件尺寸等於pctspace的值(按百分比)
value:transform_name的值,transform_name爲segment attributes,storage,oid時值可爲Y/N,pctspace爲數值
object_type的值可以表、索引、表空間、類型、集羣、約束等對象。
一個例子:
impdp hr/hr tables=hr.employees directory=dpump_dir1 dumpfile=hr_emp.dmp transform=segment_attributes:N:table
表示在導入時不導入任何表的已有存儲屬性
7.網絡鏈接參數
NETWORK_LINK,可以通過網絡執行導入而不使用轉儲文件。
impdp hr/hr tables=employees directory=dpump+dir1 schemas=scott exclude=constraint network_link=finance@prod1
8.閃回參數
FLASHBACK_TIME,FLASHBACK_SCN
監控EXPDP/IMPDP作業
可以使用DBA_DATAPUBMP_JOBS和DBA_DATAPUMP_SESSIONS視圖來顯示數據泵取作業的信息。
select * from DBA_DATAPUBMP_JOBS;
select sid,serial# from v$session s,dba_datapump_sessions d where s.saddr=d.saddr;
另也可以通過v$session_longops視圖來監控長期運行的會話。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章