Oracle數據泵詳解——讓數據遷移像“點外賣”一樣簡單?

???今天我想和大家聊一個數據庫領域的“萬能搬運工”——Oracle數據泵(Data Pump)?。相信很多人都有過這樣的經歷:業務要上線新系統,得把舊庫的數據搬到新環境;或者領導突然要一份3年前的歷史數據,可不能影響線上業務;甚至跨城市、跨云平臺的遷移需求……這時候,數據泵就是你的“救場神器”!

?一、為什么需要數據泵?傳統工具的痛點?

???先問大家一個問題:如果讓你把100箱貨物從A倉庫搬到B倉庫,你會怎么做?
?傳統方法(比如EXP/IMP工具):一個人搬,一次搬1箱,搬完100箱要100次。
?數據泵的方法:組個5人小隊,每人搬20箱,1次搞定!這就是數據泵的核心優勢——高效。

???在Oracle 10g之前,我們用exp和imp工具遷移數據,但它們有個致命問題:?單線程操作。就像一個人搬貨,速度慢、耗時長,還容易出錯。比如遷移100GB的數據庫,可能需要幾小時甚至一整天,期間還得鎖表,影響業務。

???而數據泵(從Oracle 10g開始推出)徹底解決了這個問題:

????并行搬運?:支持多進程同時工作(比如同時搬20箱),速度提升3-5倍;
??靈活過濾?:可以只搬“電子產品”(特定表),跳過“廢紙”(無用索引);
????斷點續傳?:搬一半停電了?來電后接著搬,不用從頭再來;
??還能“快遞到家”??:支持直接通過網絡傳到目標庫(不用本地存文件)。
?簡單說,數據泵就是數據庫界的“順豐快遞”——快、準、穩

?二、數據泵怎么用?手把手教你“搬數據”

???現在,我們以“把測試庫的‘用戶表’遷移到生產庫”為例,一步步看數據泵怎么操作。

?第一步:準備“中轉站”(目錄對象)??

???數據泵需要一個“臨時倉庫”存數據文件(.dmp),這個倉庫要在數據庫里提前“登記”。

-- 在數據庫里創建一個目錄(對應服務器的真實路徑)
CREATE DIRECTORY dp_dir AS '/oracle/dumps'; -- 給需要操作的用戶(比如hr用戶)授權:能讀能寫這個目錄
GRANT READ, WRITE ON DIRECTORY dp_dir TO hr;
--(注意:服務器上的/oracle/dumps文件夾要提前建好,并給Oracle用戶權限,否則會報錯!)

?第二步:導出數據(打包“用戶表”)??

???用expdp命令導出數據,命令看起來復雜,但拆開看很簡單:

  expdp hr/hr@測試庫 DIRECTORY=dp_dir  -- 用戶名/密碼@數據庫,指定中轉站DUMPFILE=user_table.dmp            -- 輸出的文件名(.dmp格式)TABLES=user_table                  -- 只導“用戶表”(不是全庫!)QUERY="WHERE create_time > '2023-01-01'"  -- 還能加條件:只導2023年后的數據PARALLEL=2                         -- 啟動2個進程并行導出(更快)

???執行后,/oracle/dumps文件夾里會生成user_table.dmp文件,這就是打包好的“用戶表”數據。

?第三步:傳輸文件到生產庫?

???把user_table.dmp從測試庫的/oracle/dumps復制到生產庫的相同路徑(比如/oracle/dumps)。如果是跨機房,用scp或云存儲工具(如OSS)就行。

?第四步:導入數據(拆包到生產庫)??

???用impdp命令導入,同樣簡單:

impdp hr/hr@生產庫 DIRECTORY=dp_dir  -- 用戶名/密碼@生產庫,指定中轉站DUMPFILE=user_table.dmp            -- 要導入的文件REMAP_SCHEMA=hr:prod_hr            -- 把測試庫的“hr用戶”映射到生產的“prod_hr用戶”TABLE_EXISTS_ACTION=REPLACE        -- 如果表已存在,直接覆蓋(可選)

???完成后,生產庫的prod_hr用戶下就有了“用戶表”的數據!

三、常見問題?3招輕松解決?

???實際操作中,大家可能會遇到這些問題,別慌,我有“三板斧”!

????問題1:報錯“ORA-39002:目錄對象無效”??

????原因?:可能是數據庫里的目錄對象沒建,或者服務器路徑不存在。
????解決?:
?檢查數據庫是否有dp_dir目錄:SELECT * FROM DBA_DIRECTORIES;
登錄服務器,確認/oracle/dumps文件夾是否存在,權限是否給Oracle用戶(比如chown oracle:oinstall /oracle/dumps)。
?
?問題2:導出文件太大,磁盤不夠用?
??原因?:默認導出的.dmp文件可能很大,超出磁盤容量。
????解決?:限制單個文件大小,用FILESIZE參數:

expdp ... FILESIZE=10G  -- 每個文件最大10GB(自動拆成多個文件)

????問題3:導入時提示“ORA-39165:作業未創建”??

????原因?:可能是之前的任務沒正常結束,殘留了“僵尸任務”。
????解決?:
????查看當前運行的數據泵任務:SELECT * FROM DBA_DATAPUMP_JOBS;
?殺掉僵尸任務:KILL JOB job_name;(具體命令看提示)
????結語:數據泵為什么是DBA的“必備技能”???(約600字)

???從今天的分享可以看到,數據泵就像數據庫的“萬能鑰匙”:
?
?????:并行處理讓遷移速度提升幾倍;
???:能按需求搬“部分數據”,不影響線上業務;
???:斷點續傳、數據校驗,不怕中途出錯。

???它不僅是DBA的“吃飯工具”,更是企業數據治理的“基礎設施”——無論是版本升級(11g→19c)、云遷移(本地→Oracle Cloud),還是數據脫敏(導出時過濾敏感信息),數據泵都能輕松搞定。

最后送大家三句話:

????測試優先?:正式遷移前,先用小數據量練手;
??監控資源?:并行度別超過CPU核心數(比如4核設PARALLEL=4);
????備份先行?:導入前備份目標庫,防止誤操作。

???掌握數據泵,你就是團隊的“數據搬運專家”!謝謝大家!

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/pingmian/89210.shtml
繁體地址,請注明出處:http://hk.pswp.cn/pingmian/89210.shtml
英文地址,請注明出處:http://en.pswp.cn/pingmian/89210.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Leetcode 03 java

爬樓梯算法現在只看明白動態規劃,也沒有很難喲!!題目70. 爬樓梯假設你正在爬樓梯。需要 n 階你才能到達樓頂。每次你可以爬 1 或 2 個臺階。你有多少種不同的方法可以爬到樓頂呢?java題解class Solution {public int climbStairs(…

怎么刪除 wps 的右鍵菜單

打開 WPS 點擊 WPS Office 選項卡,點擊右側全局配置》配置和修復工具點擊高級功能定制下的都可以關閉和隱藏點擊確定就可以了。

C++:list

一,list的介紹1,list初步(1)list是 C 標準模板庫 (STL) 中的一個雙向鏈表容器。它允許在常數時間內進行任意位置的插入和刪除操作,但不支持隨機訪問。(2)list容器的底層數據結構為帶頭雙向循環鏈…

深入理解Collections.addAll方法

文章目錄深入理解Collections.addAll方法概述方法定義基本用法1. 向List添加元素2. 向Set添加元素3. 添加數組元素與傳統add方法的比較使用傳統add方法使用Collections.addAll性能考慮注意事項實際應用場景與Collection.addAll的區別最佳實踐總結深入理解Collections.addAll方法…

CISP-PTE 練習題(完整一套)

目錄 1、SQL注入 2、文件上傳 3、文件包含 4、代碼審計 5、命令執行 6、端口掃描 7、sql 寫 webshell 8、3389 遠程桌面利用 1、SQL注入 sqllabs-less-24 二次注入 2、文件上傳 沒有對文件后綴進行檢測,但是對文件類型有檢測,需要使用圖片頭繞…

Vue3入門-計算屬性+監聽器

🏠個人主頁:Yui_ 🍑操作環境:vscode\node.js 🚀所屬專欄:Vue3 文章目錄1. 計算屬性1.1 computed函數1.2 計算屬性VS普通函數1.3 計算屬性的完整寫法2. 監聽器3.總結1. 計算屬性 計算屬性(compu…

Linux Swap區深度解析:為何禁用?何時需要?

提示:文章寫完后,目錄可以自動生成,如何生成可參考右邊的幫助文檔 文章目錄前言一、Swap區:Linux的"內存救生圈"二、為什么要禁用Swap?性能的隱形殺手三、何時應該使用Swap?不可或缺的場景四、如…

用TensorFlow進行邏輯回歸(三)

邏輯回歸Logistic regression這個腳本展示如何用TensorFlow求解邏輯回歸。 ()ysigmoid(Axb)我們使用低出生重量數據,特別地:y 0 or 1 low birth weightx demographic and medical history dataimport matplotlib.pyplot as pltimport numpy as npimport tensorflow as tfimp…

mingw 編譯 assimp v6.0.2 解決編譯報錯

mingw 編譯 assimp v6.0.2 理論上看這個就能滿足:在Windows下使用CMakeMinGW64編譯Assimp庫 環境變量問題 i386 architecture of input file CMakeFiles\assimp.dir/objects.a(assimp.rc.obj)’ is incompatible with i386:x86-64 output collect2.exe: error: ld r…

Windows 11清理C盤方法大全:磁盤清理/禁用休眠/系統還原點/優化大師使用教程

Windows 11清理C盤方法1. 使用磁盤清理工具步驟:按 Win S 搜索“磁盤清理”,打開工具。選擇C盤,點擊“確定”。勾選需要清理的文件類型(如臨時文件、系統錯誤內存轉儲等),點擊“確定”。確認刪除操作&…

Rabbitmq Direct Exchange(直連交換機)多個消費者,配置相同的key ,隊列,可以保證只有一個消費者消費嗎

思考可以保證消費不被重復消費,因為通過輪詢一個消息只會投遞給一個消費者。但是不是一個消費者消費,而是多個輪詢消費在 RabbitMQ 中,如果多個消費者(Consumers)同時訂閱 同一個隊列(Queue)&am…

設計模式是什么呢?

1.掌握設計模式的層次第一層:剛剛學編程不久,聽說過什么是設計模式。第二層:有很長時間的編程經驗,自己寫過很多代碼,其中用到了設計模式,但是自己不知道。第三層:學習過設計模式,發…

ThreadLocal使用詳解-從源碼層面分析

從demo入手看效果 代碼Demostatic ThreadLocal tl1 new ThreadLocal();static ThreadLocal tl2 new ThreadLocal();static ThreadLocal tl3 new ThreadLocal();public static void main(String[] args) {tl1.set("123");tl2.set("456");tl3.set("4…

CPO:對比偏好優化—突破大型語言模型在機器翻譯中的性能邊界

溫馨提示: 本篇文章已同步至"AI專題精講" CPO:對比偏好優化—突破大型語言模型在機器翻譯中的性能邊界 摘要 中等規模的大型語言模型(LLMs),如參數量為 7B 或 13B 的模型,在機器翻譯&#xff0…

執行shell 腳本 如何將日志全部輸出到文件

在執行 Shell 腳本時,如果需要將 所有輸出(包括標準輸出 stdout 和錯誤輸出 stderr) 重定向到日志文件,可以使用以下方法:方法 1:直接重定向(推薦) /appdata/mysql_backup_dump.sh &…

Postman接口測試實現UI自動化測試

Selenium底層原理 3天精通Postman接口測試,全套項目實戰教程!!運行代碼,啟動瀏覽器后,webdriver會將瀏覽器綁定到特定的端口,作為webdriver的remote server(遠程服務端),…

CSS動畫與變換全解析:從原理到性能優化的深度指南

引言:現代Web動畫的技術革命 在當今的Web體驗中,流暢的動畫效果已成為用戶交互的核心要素。根據Google的研究,60fps的動畫可以使用戶參與度提升53%,而卡頓的界面會導致跳出率增加40%。本文將深入剖析CSS動畫(animation…

NPM組件 @ivy-shared-components/iconslibrary 等竊取主機敏感信息

【高危】NPM組件 ivy-shared-components/iconslibrary 等竊取主機敏感信息 漏洞描述 當用戶安裝受影響版本的 ivy-shared-components/iconslibrary 等NPM組件包時會竊取用戶的主機名、用戶名、工作目錄、IP地址等信息并發送到攻擊者可控的服務器地址。 MPS編號MPS-zh19-e78w…

Fail2ban防止暴力破解工具使用教程

Fail2ban防止暴力破解工具使用教程場景Fail2ban安裝和配置安裝配置原理遇到的問題以及解決辦法問題1:設置的策略是10分鐘內ssh連接失敗2次的ip進行封禁,日志中實際卻出現4次連接。問題2:策略設置為1分鐘內失敗兩次,封禁ip。但通過…

亞遠景科技助力長城汽車,開啟智能研發新征程

亞遠景科技助力長城汽車,開啟智能研發新征程在汽車智能化飛速發展的當下,軟件研發管理成為車企決勝未來的關鍵。近日,亞遠景科技胡浩老師應邀為長城汽車開展了一場主題深刻且極具實用價值的培訓。本次培訓聚焦軟件研發管理導論 - 建立機器學習…