數據泵expdp/impdp導入導出詳細說明


1、數據泵導出expdp詳細參數

oracle數據泵導出實用程序expdp提供了一種用於在 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=scot 或 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 鏈接到源系統的遠程數據庫的名稱。
NOLOGFILE 不寫入日志文件 (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 將立即關閉數據泵作業。|

2、數據泵導入impdp詳細參數

數據泵導入實用程序提供了一種用於在 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 要應用於適用對象的元數據轉換。有效的轉換關鍵字: SEGMENT_ATTRIBUTES, STORAGE 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 將立即關閉

3、數據泵作業參數詳細說明

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種方式.

3.1 EXPDP命令行選項

3.1.1 ATTACH

該選項用於在客戶會話與已存在導出作用之間建立關聯.語法如下

ATTACH=[schema_name.]job_name

Schema_name用於指定方案名,job_name用於指定導出作業名.注意,如果使用ATTACH選項,在命令行除了連接字符串和ATTACH選項外,不能指定任何其他選項,示例如下:

Expdp scott/tiger ATTACH=scott.export_job

3.1.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.1.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;

3.1.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

3.1.5 ESTIMATE

指定估算被導出表所占用磁盤空間分方法.默認值是BLOCKS

EXTIMATE={BLOCKS | STATISTICS}

設置為BLOCKS時,oracle會按照目標對象所占用的數據塊個數乘以數據塊尺寸估算對象占用的空間,設置為STATISTICS時,根據最近統計值估算對象占用空間

Expdp scott/tiger TABLES=emp ESTIMATE=STATISTICS

DIRECTORY=dump DUMPFILE=a.dump

3.1.6 EXTIMATE_ONLY

指定是否只估算導出作業所占用的磁盤空間,默認值為N

EXTIMATE_ONLY={Y | N}

設置為Y時,導出作用只估算對象所占用的磁盤空間,而不會執行導出作業,為N時,不僅估算對象所占用的磁盤空間,還會執行導出操作.

Expdp scott/tiger ESTIMATE_ONLY=y NOLOGFILE=y

3.1.7 EXCLUDE

該選項用於指定執行操作時釋放要排除對象類型或相關對象

EXCLUDE=object_type[:name_clause] [,….]

Object_type用於指定要排除的對象類型,name_clause用於指定要排除的具體對象.EXCLUDE和INCLUDE不能同時使用

Expdp scott/tiger DIRECTORY=dump DUMPFILE=a.dup EXCLUDE=VIEW

3.1.8 FILESIZE

指定導出文件的最大尺寸,默認為0,(表示文件尺寸沒有限制)

3.1.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

3.1.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’)”

3.1.11 FULL

指定數據庫模式導出,默認為N

FULL={Y | N}

為Y時,標識執行數據庫導出.

3.1.12 HELP

指定是否顯示EXPDP命令行選項的幫助信息,默認為N

當設置為Y時,會顯示導出選項的幫助信息.

Expdp help=y

3.1.13 INCLUDE

指定導出時要包含的對象類型及相關對象

INCLUDE = object_type[:name_clause] [,… ]

3.1.14 JOB_NAME

指定要導出作用的名稱,默認為SYS_XXX

JOB_NAME=jobname_string

3.1.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

指定數據庫鏈名,如果要將遠程數據庫對象導出到本地例程的轉儲文件中,必須設置該選項.

3.1.17 NOLOGFILE

該選項用於指定禁止生成導出日志文件,默認值為N.

3.1.18 PARALLEL

指定執行導出操作的並行進程個數,默認值為1

3.1.19 PARFILE

指定導出參數文件的名稱

PARFILE=[directory_path] file_name

3.1.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’

3.1.21 SCHEMAS

該方案用於指定執行方案模式導出,默認為當前用戶方案.

3.1.22 STATUS

指定顯示導出作用進程的詳細狀態,默認值為0

3.1.23 TABLES

指定表模式導出

TABLES=[schema_name.]table_name[轉 expdp/impdp 詳細參數解釋 - Lee.Li - TRY TO EXPRESSartition_name][,…]

Schema_name用於指定方案名,table_name用於指定導出的表名,partition_name用於指定要導出的分區名.

3.1.24 TABLESPACES

指定要導出表空間列表

3.1.25 TRANSPORT_FULL_CHECK

該選項用於指定被搬移表空間和未搬移表空間關聯關系的檢查方式,默認為N.

當設置為Y時,導出作用會檢查表空間直接的完整關聯關系,如果表空間所在表空間或其索引所在的表空間只有一個表空間被搬移,將顯示錯誤信息.當設置為N時,導出作用只檢查單端依賴,如果搬移索引所在表空間,但未搬移表所在表空間,將顯示出錯信息,如果搬移表所在表空間,未搬移索引所在表空間,則不會顯示錯誤信息.

3.1.26 TRANSPORT_TABLESPACES

指定執行表空間模式導出

3.1.27 VERSION

指定被導出對象的數據庫版本,默認值為COMPATIBLE.

VERSION={COMPATIBLE | LATEST | version_string}

為COMPATIBLE時,會根據初始化參數COMPATIBLE生成對象元數據;為LATEST時,會根據數據庫的實際版本生成對象元數據.version_string用於指定數據庫版本字符串.調用EXPDP

3.2 EXPDP導出示例

使用EXPDP工具時,其轉儲文件只能被存放在DIRECTORY對象對應的OS目錄中,而不能直接指定轉儲文件所在的OS目錄.因此,使用EXPDP工具時,必須首先建立DIRECTORY對象.並且需要為數據庫用戶授予使用DIRECTORY對象權限.

CREATE DIRECTORY dump_dir AS DIRECTORY TO EXPRESSUMP’;

GRANT READ, WIRTE ON DIRECTORY dump_dir TO scott;

3.2.1、導出表

Expdp scott/tiger DIRECTORY=dump_dir DUMPFILE=tab.dmp TABLES=dept,emp

3.2.2、導出方案

Expdp scott/tiger DIRECTORY=dump_dir DUMPFILE=schema.dmp

SCHEMAS=system,scott

3.3.3、導出表空間

Expdp system/manager DIRECTORY=dump_dir DUMPFILE=tablespace.dmp

TABLESPACES=user01,user02

3.2.4、導出數據庫

Expdp system/manager DIRECTORY=dump_dir DUMPFILE=full.dmp FULL=Y

3.3 IMPDP導入參數

IMPDP命令行選項與EXPDP有很多相同的,不同的有:

3.3.1、REMAP_DATAFILE

該選項用於將源數據文件名轉變為目標數據文件名,在不同平台之間搬移表空間時可能需要該選項.

REMAP_DATAFIEL=source_datafie:target_datafile

3.3.2、REMAP_SCHEMA

該選項用於將源方案的所有對象裝載到目標方案中.

REMAP_SCHEMA=source_schema:target_schema

3.3.3、REMAP_TABLESPACE

將源表空間的所有對象導入到目標表空間中

REMAP_TABLESPACE=source_tablespace:target_tablespace

3.3.4、REUSE_DATAFILES

該選項指定建立表空間時是否覆蓋已存在的數據文件.默認為N

REUSE_DATAFIELS={Y | N}

3.3.5、SKIP_UNUSABLE_INDEXES

指定導入是是否跳過不可使用的索引,默認為N

3.3.6、SQLFILE

指定將導入要指定的索引DDL操作寫入到SQL腳本中

SQLFILE=[directory_object:]file_name

Impdp scott/tiger DIRECTORY=dump DUMPFILE=tab.dmp SQLFILE=a.sql

3.3.7、STREAMS_CONFIGURATION

指定是否導入流元數據(Stream Matadata),默認值為Y.

3.3.8、TABLE_EXISTS_ACTION

該選項用於指定當表已經存在時導入作業要執行的操作,默認為SKIP

TABBLE_EXISTS_ACTION={SKIP | APPEND | TRUNCATE | FRPLACE }

當設置該選項為SKIP時,導入作業會跳過已存在表處理下一個對象;當設置為APPEND時,會追加數據,為TRUNCATE時,導入作業會截斷表,然后為其追加新數據;當設置為REPLACE時,導入作業會刪除已存在表,重建表病追加數據,注意,TRUNCATE選項不適用與簇表和NETWORK_LINK選項

3.3.9、TRANSFORM

該選項用於指定是否修改建立對象的DDL語句

TRANSFORM=transform_name:value[轉 expdp/impdp 詳細參數解釋 - Lee.Li - TRY TO EXPRESSbject_type]

Transform_name用於指定轉換名,其中SEGMENT_ATTRIBUTES用於標識段屬性(物理屬性,存儲屬性,表空間,日志等信息),STORAGE用於標識段存儲屬性,VALUE用於指定是否包含段屬性或段存儲屬性,object_type用於指定對象類型.

Impdp scott/tiger directory=dump dumpfile=tab.dmp

Transform=segment_attributes:n:table

3.3.10、TRANSPORT_DATAFILES

該選項用於指定搬移空間時要被導入到目標數據庫的數據文件

TRANSPORT_DATAFILE=datafile_name

Datafile_name用於指定被復制到目標數據庫的數據文件

Impdp system/manager DIRECTORY=dump DUMPFILE=tts.dmp

TRANSPORT_DATAFILES=’/user01/data/tbs1.f’調用IMPDP

3.4 IMPDP導入示例

3.4.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


免責聲明!

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



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