​今天我想和大家聊一个数据库领域的“万能搬运工”——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。但通过…

亚远景科技助力长城汽车,开启智能研发新征程

亚远景科技助力长城汽车,开启智能研发新征程在汽车智能化飞速发展的当下,软件研发管理成为车企决胜未来的关键。近日,亚远景科技胡浩老师应邀为长城汽车开展了一场主题深刻且极具实用价值的培训。本次培训聚焦软件研发管理导论 - 建立机器学习…