Data pump學習筆記
學習筆記
綜述
n 是一個基於伺服器的工具,用於高速的資料地移動
n 底層結構是基於dbms_datapump
n 提供了新一代的匯入和到處工具:expdp,impdp,基於網路的介面
n 是傳統匯入匯出工具的超集
體系結構
n 直接路徑API(DPAPI)
n 外部表服務
n 包dbms_metadata
n 包dbms_datapump
n Expdp和impdp
Data dump的匯入匯出綜述
資料泵的匯入匯出是Oracle10的一個新的工具,雖然和傳統的匯入匯出命令相似,但是兩個是獨立的產品。
資料泵的匯出是一個工具,是將資料匯出到一個作業系統檔案中,這個作業系統檔案被成為匯出檔案集。匯入則是相反的過程
這些工具能夠被用於從遠端資料庫直接匯出到一個匯出檔案集中,或者直接從一個源資料庫匯入到目標資料庫,而不需要任何的其他檔案的輔助。這就是所說的網路模式,這個模式在從一個只讀源資料庫中匯出資料非常有用。
在每一個資料泵操作的核心是一個主表(MT),這個表示在使用者允許資料泵job的時候在使用者的模式下新增的,MT用來維護這個job的所有方面。這個MT在一個基於檔案的匯出job中被建立,被作為最後一步寫入到匯出檔案集中。可逆而言,在基於檔案的匯入操作中的第一步就是匯入這個MT到當前的使用者模式中,然後用於匯入時,新增所有物件的順序。
當資料泵正常結束的時候,這個MT被刪除。
資料泵匯入匯出的好處
資料訪問模式
直接路徑
外部表
Detachment from and reattachment to long-running jobs
資料泵job的重啟
Fine-grained物件和資料的選擇
外在資料庫版本的規範
並行執行(只能用於企業版)
匯出job空間消耗估計
分散式環境的網路模式
在匯入時重新定位能力
資料舉例和資料壓縮
資料泵能夠自動決定所使用的資料訪問模式:直接路徑或者外部表模式
資料泵能夠detach或者reattach一個長時間執行的job,而不影響job自身,允許在執行的時候從不同的位置監視job。所有被停止的資料泵job能夠不丟失資料的情況下重新啟動,
引數exclude,include,connect是被用於精細物件或者資料的選擇。
能夠透過引數version為所移動的物件指定資料庫版本。新增一個匯出檔案集,這個檔案集支援資料泵的前一版本的oracle資料庫。這個版本僅被未來的版本保留。
使用引數parallel指定在匯出job上操作的活動的執行伺服器上的最大執行緒數目
使用estimate_only引數指定估計匯出job消耗的空間
網路模式能夠將遠端資料庫直接匯出到一個匯出檔案集中,這種需要使用資料庫鏈連線到源系統上
在匯入中,能夠改變目標資料檔案的名,schema和表空間
使用引數sample值得在用於Oracle 10g中,從源資料庫中匯出資料能夠指定一定比例的資料作為取樣
使用引數compression描述是否在匯出檔案中資料是否被壓縮,這樣會佔有更少的磁碟,如果壓縮了。在匯入的時候會自動解壓。
一般的用處
客戶端程式是呼叫資料泵API,一個客戶端不需要在job執行之後,多客戶端可以從一個job上attach,detach,來實現監控的目的
當一個客戶端登陸到oracle資料庫上的時候,一個影子程式將被新增,這個程式服務需要資料泵的API。在收到dbms_datapump.open的請求的時候,影子程式新增job,主要是新增主表,新增AQ佇列用和其他不同的程式於通訊,新增主控制程式。等job執行時候,影子程式的主要任務服務於從客戶端的get_status請求。如果客戶端detach,影子程式也會dies
主控程式MCP,控制資料泵job的執行和順序。維護job的狀態,job的描述,在主表中重啟和匯出檔案資訊。一個MCP被命名為DMnn
在受到start_job請求的時候,MCP根據引數parallel新增幾個工作程式。這幾個工作程式執行的是主MCP請求的任務,被命名為DWnn
如果外部表路徑被選擇作為匯入匯出訪問的模式,工作程式和一定數目的並行執行服務來配合。
直接路徑資料泵:需要考慮的問題
有精細訪問控制的表能夠在插入和選擇模式
Domain index exists for a LOB column
簇表引進
友活動觸發器的表被定義
Global index on partitioned tables
with a single-partition load
• BFILE or opaque type columns
• Referential integrity constraint
• VARRAY columns with an embedded opaque type
資料泵檔案位置
資料泵檔案的三種型別:
匯出檔案,日誌檔案,sql檔案
絕對路徑不被支援
Oracle目錄物件必須被用
檔案位置的優先順序
n Per-file目錄
n Directory引數
n Data_pump_dir環境變數
n Data_pump_dir預設目錄物件
資料泵檔案命名和大小
一個匯出檔案集可以包含多個檔案
Dumpfile定義dump檔案的列表
檔案被逗號分開列表
%U模板
Dump檔案的初始數目依賴於:
Parallel引數
Dumpfile引數
Filesize引數決定每一個dump檔案的大小
先前存在地同樣名字的檔案不會被覆蓋
Dumpfile引數指定名字和基於磁碟地dump檔案的目錄。如果是多檔案要是被指定的話,使用逗號隔開,或者使用分開的引數dumpfile指定。如果沒有指定則是使用預設的檔名expdat.dmp。預設,新增的檔案事自動擴充套件的。
Filesize指定的話,每一個檔案是有這個引數來限制,不能擴充套件。
資料泵工具:介面和模式
資料泵匯出匯入介面
命令列
引數檔案
互動命令列
資料庫控制
資料泵匯入匯出模式
n 全
n 模式
n 表
n 表空間
n 可轉移表空間
資料泵和過濾
精細物件選擇
-include = object_type[:”name_expr”]
-exclude = object_type[:”name_expr”]
EXCLUDE = VIEW EXCLUDE = PACKAGE EXCLUDE = INDEX:”like ‘EMP%’” |
資料選擇
-CONTENT = ALL|METADATA_ONLY|DATA_ONLY
-QUERY =[schema.][table_name:]”query_clause”
QUERY=hr.employees:"WHERE department_id in (10,20) and salary < 1600 ORDER BY department_id" |
資料泵匯入的轉換
Remap:
使用REMAP_DATAFILE資料檔案
使用REMAP_DATAFILE的表空間
使用REMAP_SCHEMA的模式
資料泵匯入傳送
使用transform,能夠不包含下面的表和索引
Storage 和 tablespace子句
Storage子句
重新新增抽象資料型別的物件標識
改變擴充套件分配和檔案大小
TRANSFORM =
SEGMENT_ATTRIBUTES|STORAGE|OID|PCTSPACE:{y|n|v}[:object type
資料泵job監視檢視
V$session_longops
Dba_datapump_jobs
Dba_datapump_sessions
Export: Release 10.2.0.1.0 - Production on 星期五, 23 6月, 2006 14:32:17 Copyright (c) 2003, 2005, Oracle. All rights reserved. 資料泵匯出實用程式提供了一種用於在 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.dmp。 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= START_JOB 啟動/恢復當前作業。 STATUS 在預設值 (0) 將顯示可用時的新狀態的情況下, 要監視的頻率 (以秒計) 作業狀態。 STATUS[=interval] STOP_JOB 順序關閉執行的作業並退出客戶機。 STOP_JOB=IMMEDIATE 將立即關閉 資料泵作業。 |
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/222350/viewspace-908019/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 文件筆記--Oracle Data Pump 2筆記Oracle
- 文件筆記--Oracle Data Pump 1筆記Oracle
- 有關Data Pump的學習
- 【Data Pump】Data Pump的並行引數原理並行
- R語言data manipulation學習筆記之subset dataR語言筆記
- oracle data pumpOracle
- [Data Guard]Oracle10g Data Guard學習筆記(一)Oracle筆記
- [Data Guard]Oracle10g Data Guard學習筆記(二)Oracle筆記
- [Data Guard]Oracle10g Data Guard學習筆記(三)Oracle筆記
- data pump總結
- Oracle Data Pump 研究(一)Oracle
- 初探data pump export (二)Export
- 初探data pump export(一)Export
- Data Pump with Network importImport
- Tensorflow學習筆記(8)——input_data.py解析筆記
- RequireJs學習筆記之data-main Entry PointUIJS筆記AI
- numpy的學習筆記\pandas學習筆記筆記
- SAP UI5 資料型別(data type) 學習筆記UI資料型別筆記
- data pump (資料抽取)測試
- 使用data pump前的設定
- Oracle 10g Data Pump IOracle 10g
- Oracle 10g Data Pump IIOracle 10g
- IT學習筆記筆記
- 學習筆記筆記
- 論文學習筆記 - Classifification of Hyperspectral and LiDAR Data Using Coupled CNNs筆記CNN
- 《JAVA學習指南》學習筆記Java筆記
- Oracle 10g Data Pump ComponentsOracle 10g
- 10g新特性——Data Pump(轉)
- GoldenGate<二> configure data pumpGo
- CUUG筆記 ORACLE索引學習筆記筆記Oracle索引
- Elasticsearch學習筆記Elasticsearch筆記
- 字串學習筆記字串筆記
- Scala學習筆記筆記
- MySql學習筆記MySql筆記
- jQuery 學習筆記jQuery筆記
- react學習筆記React筆記
- 學習筆記(4.3)筆記
- 學習筆記(4.4)筆記