Oracle 數據泵expdq,impdq

来源:https://www.cnblogs.com/gm1995/archive/2020/01/06/12155525.html
-Advertisement-
Play Games

使用數據泵技術實現邏輯備份 數據泵概述 數據泵(DATA PUMP)是一種在資料庫之間、資料庫與操作系統之間,高速傳輸數據的技術(10g推出)。 邏輯備份概述 邏輯備份是對資料庫對象(如用戶、表、存儲過程等)利用EXPORT等工具進行導出 物理備份對比 物理備份是轉儲ORACLE物理文件(如數據文件 ...


使用數據泵技術實現邏輯備份

數據泵概述

數據泵(DATA PUMP)是一種在資料庫之間、資料庫與操作系統之間,高速傳輸數據的技術(10g推出)。

邏輯備份概述

邏輯備份是對資料庫對象(如用戶、表、存儲過程等)利用EXPORT等工具進行導出

物理備份對比

物理備份是轉儲ORACLE物理文件(如數據文件、控制文件、歸檔日誌文件等)
物理備份旨在完全恢復整個資料庫,要求完全相同的備份環境和恢復環境
邏輯備份旨在備份數據本身,可移植性強,但是備份和恢復速度低下,大型業務系統一般不用

操作步驟

1.創建目錄對象(在哪導入,導出到哪)

CREATE DIRECTORY 目錄名(dump_dir) as '絕對路徑';

2.dump_dir目錄授予

GRANT read,write on directory 目錄名 to 導入導出用戶;

SELECT * FROM DBA_DIRECTORIES; 查詢所有已創建的目錄
DROP directory 目錄名; 刪除目錄

3.expdq導出(EXPDP和IMPDP是Oracle服務端的工具,退出sqlplus)

第一種:全量導出資料庫:
expdp 用戶名/密碼@orcl dumpfile=導出文件名.dmp directory=目錄名 full=y logfile=日誌名.log;(與dmp一個目錄)

第二種:按用戶導出:
expdp 用戶名/密碼@orcl schemas=用戶 dumpfile=導出文件名.dmp directory=目錄名 logfile=日誌名.log;

第三種:按表空間導出:
expdp 用戶名/密碼@orcl tablespace=表空間名 dumpfile=導出文件名.dmp directory=目錄名 logfile=日誌名.log;

第四種:按表導出:
expdp 用戶名/密碼@orcl tables=表名 dumpfile=導出文件名.dmp directory=目錄名 logfile=日誌名.log;
導出表結構
expdp 用戶名/密碼@orcl directory=目錄名 dumpfile=導出文件名.dmp content=metadata_only tables=(a,b)
metadata_only代表只導出表結構

第五種:按查詢條件導:
expdp 用戶名/密碼@orcl tables=表名='where 條件=值' dumpfile=導出文件名.dmp directory=目錄名 logfile=日誌名.log;

4.impdq(退出sqlplus)

第一種:全量導入資料庫;
impdp 用戶名/密碼 directory=data_dir dumpfile=expdp.dmp full=y;

第二種:按名用戶導入,從源用戶名1導入到目標用戶名2;
impdp 用戶名/密碼 REMAP_SCHEMA=[源用戶名1]:[目標用戶名2] directory=data_dir dumpfile=expdp.dmp logfile=impdp.log;
  
第三種:
a.從A用戶中把表table1和table2導入到B用戶中;
impdp 用戶名/密碼 tables=A.table1,A.table2 REMAP_SCHEMA=A:B directory=data_dir dumpfile=expdp.dmp logfile=impdp.log;
b.將表空間TBS01、TBS02、TBS03導入到表空間A_TBS,將用戶B的數據導入到A,並生成新的oid防止衝突;
impdp 用戶名/密碼 remap_tablespace=TBS01:A_TBS,TBS02:A_TBS,TBS03:A_TBS REMAP_SCHEMA=B:A FULL=Y transform=oid:n directory=data_dir dumpfile=expdp.dmp logfile=impdp.log
c.導入表結構

第四種:導入表空間;
impdp 用戶名/密碼 tablespaces=tbs1 directory=data_dir dumpfile=expdp.dmp logfile=impdp.log;

第五種:追加數據;
impdp 用戶名/密碼 directory=data_dir dumpfile=expdp.dmp schemas=system table_exists_action=replace logfile=impdp.log;
--table_exists_action:導入對象已存在時執行的操作。有效關鍵字:SKIP,APPEND,REPLACE和TRUNCATE

5.參數

1.expdb

ATTACH 連接到現有作業, 例如 ATTACH [=作業名]。

COMPRESSION           減小轉儲文件內容的大小, 其中有效關鍵字 值為: ALL, (METADATA_ONLY), DATA_ONLY 和 NONE。

CONTENT               指定要卸載的數據, 其中有效關鍵字 值為: (ALL), DATA_ONLY 和 METADATA_ONLY。

DATA_OPTIONS            數據層標記, 其中唯一有效的值為: 使用CLOB格式的 XML_CLOBS-write XML 數據類型。

DIRECTORY              供轉儲文件和日誌文件使用的目錄對象,即邏輯目錄。

DUMPFILE              目標轉儲文件 (expdp.dmp) 的列表,例如 DUMPFILE=expdp1.dmp, expdp2.dmp。

ENCRYPTION             加密部分或全部轉儲文件, 其中有效關鍵字值為: ALL, DATA_ONLY, METADATA_ONLY,ENCRYPTED_COLUMNS_ONLY 或 NONE。

ENCRYPTION_ALGORITHM       指定應如何完成加密, 其中有效關鍵字值為: (AES128), AES192 和 AES256。

ENCRYPTION_MODE          生成加密密鑰的方法, 其中有效關鍵字值為: DUAL, PASSWORD 和 (TRANSPARENT)。

ENCRYPTION_PASSWORD       用於創建加密列數據的口令關鍵字。

ESTIMATE              計算作業估計值, 其中有效關鍵字值為: (BLOCKS) 和 STATISTICS。

ESTIMATE_ONLY           在不執行導出的情況下計算作業估計值。

EXCLUDE               排除特定的對象類型, 例如 EXCLUDE=TABLE:EMP。例:EXCLUDE=[object_type]:[name_clause],[object_type]:[name_clause] 。

FILESIZE               以位元組為單位指定每個轉儲文件的大小。

FLASHBACK_SCN            用於將會話快照設置回以前狀態的 SCN。 -- 指定導出特定SCN時刻的表數據。

FLASHBACK_TIME           用於獲取最接近指定時間的 SCN 的時間。-- 定導出特定時間點的表數據,註意FLASHBACK_SCN和FLASHBACK_TIME不能同時使用。

FULL                 導出整個資料庫 (N)。  

HELP               顯示幫助消息 (N)。

INCLUDE               包括特定的對象類型, 例如 INCLUDE=TABLE_DATA。

JOB_NAME           要創建的導出作業的名稱。

LOGFILE               日誌文件名 (export.log)。

NETWORK_LINK            鏈接到源系統的遠程資料庫的名稱。

NOLOGFILE              不寫入日誌文件 (N)。

PARALLEL              更改當前作業的活動 worker 的數目。

PARFILE               指定參數文件。

QUERY                用於導出表的子集的謂詞子句。--QUERY = [schema.][table_name:] query_clause。

REMAP_DATA             指定數據轉換函數,例如 REMAP_DATA=EMP.EMPNO:REMAPPKG.EMPNO。

REUSE_DUMPFILES          覆蓋目標轉儲文件 (如果文件存在) (N)。

SAMPLE             要導出的數據的百分比。

SCHEMAS               要導出的方案的列表 (登錄方案)。  

STATUS               在預設值 (0) 將顯示可用時的新狀態的情況下,要監視的頻率 (以秒計) 作業狀態。  

TABLES               標識要導出的表的列表 - 只有一個方案。--[schema_name.]table_name[:partition_name][,…]

TABLESPACES             標識要導出的表空間的列表。

TRANSPORTABLE          指定是否可以使用可傳輸方法, 其中有效關鍵字值為: ALWAYS, (NEVER)。

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 的數目>。

_DUMPFILES             覆蓋目標轉儲文件 (如果文件存在) (N)。

START_JOB             啟動/恢復當前作業。

STATUS               在預設值 (0) 將顯示可用時的新狀態的情況下,要監視的頻率 (以秒計) 作業狀態。STATUS[=interval]。

STOP_JOB              順序關閉執行的作業並退出客戶機。STOP_JOB=IMMEDIATE 將立即關閉數據泵作業。

2.impdq

ATTACH                   連接到現有作業, 例如 ATTACH [=作業名]。

CONTENT                    指定要卸載的數據, 其中有效關鍵字 值為: (ALL), DATA_ONLY 和 METADATA_ONLY。

DATA_OPTIONS                 數據層標記,其中唯一有效的值為:SKIP_CONSTRAINT_ERRORS-約束條件錯誤不嚴重。

DIRECTORY                  供轉儲文件,日誌文件和sql文件使用的目錄對象,即邏輯目錄。

DUMPFILE                   要從(expdp.dmp)中導入的轉儲文件的列表,例如 DUMPFILE=expdp1.dmp, expdp2.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                   指定參數文件。

PARTITION_OPTIONS             指定應如何轉換分區,其中有效關鍵字為:DEPARTITION,MERGE和(NONE)。

QUERY                    用於導入表的子集的謂詞子句。

REMAP_DATA                 指定數據轉換函數,例如REMAP_DATA=EMP.EMPNO:REMAPPKG.EMPNO。

REMAP_DATAFILE              在所有DDL語句中重新定義數據文件引用。

REMAP_SCHEMA                將一個方案中的對象載入到另一個方案。

REMAP_TABLE                表名重新映射到另一個表,例如 REMAP_TABLE=EMP.EMPNO:REMAPPKG.EMPNO。

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。

TRANSPORTABLE               用於選擇可傳輸數據移動的選項。有效關鍵字為: ALWAYS 和 (NEVER)。僅在 NETWORK_LINK 模式導入操作中有效。

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 將立即關閉數據泵作業。


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 文字是一種思維病毒 因為它可以改寫大腦的迴路 書寫是為了更好的思考 “教”是最好的“學” 一旦你把自己潛意識裡面的東西從幕後拉出來,你就有了面對並反思它們的可能,而不是任它們在幕後陰險地左右你的思維 無論如何,不用急於求成,在一個主題上深入下去思考,總能挖到別人挖不到的角落。你能讓一個問題在大腦中停 ...
  • everspin MRAM是為LSI Corporation(現在的Avago Technologies)RAID控制器卡上的日誌存儲器選擇的存儲器,該RAID卡具有6Gb/s和12Gb/sSAS存儲連接。Everspin MRAM在其RAID磁碟陣列中執行寫日誌或數據日誌功能。 MRAM實時捕獲事 ...
  • 自旋轉矩磁阻隨機存取存儲器(ST-MRAM)有望成為一種快速,高密度的非易失性存儲器,可以增強各種應用程式的性能,特別是在用作數據存儲中的非易失性緩衝器時設備和系統。為此,everspin開發了基於90nmCMOS技術的全功能64Mb DDR3 STT-MRAM。存儲器以8個存儲區的配置進行組織,可 ...
  • 參考穀粒學院的linux視頻教程:http://www.gulixueyuan.com/course/300/task/7091/show ...
  • 目錄 一、安裝前準備 二、安裝MySQL 三、設置遠程登錄 四、安裝問題解決 五、設置MySQL開機自啟 一、安裝前準備 1、在官網下載MySQL安裝包(註意下載的安裝包類型) 2、查看是否安裝mariadb # rpm -qa | grep mariadb 3、卸載mariadb # rpm -e ...
  • 目錄 一、###MySQL登錄和退出 二、###MySQL常用命令 三、###MySQL語法規範 四、###基礎查詢 五、###條件查詢 六、###排序查詢 七、###常見函數的學習 八、###分組查詢 九、###連接查詢 十、###子查詢 十一、###分頁查詢 十二、###聯合查詢 十三、###D ...
  • 這裡的Redis主從結構可以是簡單的主從,sentinel,redis cluster中的主從等。wait命令的作用:此命令將阻塞當前客戶端,直到當前Session連接(主節點上)所有的寫命令都被傳送到指定數據量的slave節點。如果到達超時(以毫秒為單位),則即使尚未完全傳送到達指定數量的salv ...
  • 函數語法:FIND_IN_SET(str,strlist) 直接上圖: ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...