ORA-39095: Dump file space has been exhausted
ORA-39095: Dump file space has been exhausted
1 简述
一个朋友在导数据的时候,突然遇到ORA-39095错误。随即查看磁盘空间,发现才使用了60%多。而导出的数据只有几个G.
明明有空间,为什么会报空间耗尽呢?百爪搔心的问我~
下面是分析和解决过程。
2 错误信息
$ oerr ora 39095
39095, 00000, "Dump file space has been exhausted: Unable to allocate %s bytes"
// *Cause: The Export job ran out of dump file space before the job was
// completed.
// *Action: Reattach to the job and add additional dump files to the job
// restarting the job.
[oracle@bossdb1 ~]$
从错误信息来看,这个错误的本意是: 导出的数据量超出了dmp文件的最大容量。
官方的建议是: 给导出任务添加额外的dmp文件。
那么按这个思路处理的操作应该是:
expdp username/password@tnsnames attache=job_name
add_file xxxx
但是我没这样做。有兴趣的童鞋,可以按这个思路去处理一下,看是不是可以解决这个错误。
从官方的解释来看,是文件大小不能容纳所有数据引起的。可是据说并没有配置filesize参数,也就是没有限制单个文件大小。所以这个原因也排除。
3 分析
参数
directory=exp_dir
dumpfile=for_union_query.dmp
logfile=for_union_query.log
CLUSTER=N
include=table:"in(select table_name from tables_tobe_exported where owner='es')"
parallel=10
schemas=ES
compression=all分析 看参数文件中,突然反应过来:
- parallel 并行写入
为了防止数据错乱,Oracle不允许多个进程对同一个dmp文件进行同时写入,而某个进程如果长时间无法获取dmp文件的写权限,就会报ORA-39095错误。
4 解决
将参数文件中的 parallel=10 这一行删除。再导出时报错消失。
其实不删除,重新试几次也可以导出成功。但是这里对导出的parallel 进行一次浅析。
5 扩展
很多人,在导出数据的时候为了加快导出速度,节省时间,都会加上parallel参数。但是对于Oracle的并行机制并不了解。 并不能真正的开启并行导出或者导入。
比如本次示例中,只设置并行参数,这样是不能真正打开并行导出的。最多只是 并行 读取,但是不能实现并行写入文件。
要加快导出速度,需要几方面来配合:
- 数据库写进程
- 并行数
- 导出文件个数
只有这三者配合才可以真正的实现并行导出。
那么能开启多少个并发, 首先要查看oracle instance里当前开启了多少个数据库写进程
show parameter db_writer_processes
parallel参数的值,不要超过这个参数的值 。不然对数据库有影响。
设置dumpfile 参数值时,加上%U参数。加上这个参数后,可以由Oracle 数据泵自行决定创建多少个数据文件。 当然还可以指定filesize,不过不是必要的.
更多关于Oracle数据泵的用法参见Oracle 数据泵.
ORA-39095: Dump file space has been exhausted的更多相关文章
- Debug program crash with dump file.
1. Task manager, -> find the process for the program which crashed. 2. Right click the process -& ...
- linux shell 命令学习(1) du- estimate file space usage
du - estimate file space usage , 计算文件的磁盘大小 语法格式: du [OPTION] ... [FILE] 描述: 汇总每个文件的磁盘大小, 递归汇总目录的大小, ...
- How to Create Dump File for Applications
使用WinDBG这个工具,可以在应用程序异常终止或者无响应时获取它的尸体,以用来解剖研究. Creating Dump File 在Vista环境中抓取Dump文件很方便,在task man ...
- 14.10.2 File Space Management 文件空间管理:
14.10.2 File Space Management 文件空间管理: 数据文件 你定义在配置文件形成了InnoDB的系统表空间, 文件是逻辑连接形成表空间,没有条带化使用. 你不能定义你的表在表 ...
- Debug Dump file
dump file is a snapshot of the processs memeory. to debug it, we need use its corresponding executiv ...
- about !dbgprint to analyze BSOD dump file.
基本规则: 只有debug mode enable的机器,产生的dump file才会保存dbgprint的buffer. 默认!dbgprint的buffer size是4k. 增加buffer s ...
- Linux core dump file详解
Linux core dump file详解 http://www.cnblogs.com/langqi250/archive/2013/03/05/2944931.html
- File Space——一个java structs2.0的小栗子(DIY)
1 概述 File Space系统适用于团体,主要提供的是团队文件分享以及个人文件的存储管理服务.分为个人文件存储管理平台和团队文件共享平台. 个人文件存储平台主要为个人提供相关的文件分类存储服务:该 ...
- ORA-39142: incompatible version number 5.1 in dump file
ORA-39142: incompatible version number 5.1 in dump file http://blog.itpub.net/26664718/viewspace-214 ...
随机推荐
- 快速导入Excel数据到mysql
首先利用mysql文件,导出csv文件, 然后,直接修改csv文件,然后导入csv文件
- 单节点FastDFS与Nginx部署
一.安装基本组件 1.安装编译需要的组件,必安装组件. yum install gcc-c++ 2.安装libevent函数库.pcre-devel zlib-devel必安装组件. yum ...
- lodash 中 remove
var obj = { "objectiveDetailId": 285, "objectiveId": 29, "number": 1, ...
- 【XDOJ】坑爹的杜神
原题: 众所周知,杜神非常喜欢出大模拟,也非常喜欢设置一些细节坑人.例如,在某次大赛中,他出了一道这样的题 (以下省略3000字) 计算出答案a后,你应该将a除以1000,再保留到小数点后两位输出,四 ...
- SpringBoot 上传读取图片 巨坑
之前自己也做过文件上传,不过存储路径放在那个tomcat服务器路径下,就没遇到什么问题 但前几天在做图片的上传,想把文件放在项目下指定的一个文件夹下,就感觉有点麻烦 修改配置文件 在springboo ...
- 分布式 一致性Paxos算法(转载)
比较通俗易懂,可以入门,转载地址是http://www.cnblogs.com/linbingdong/p/6253479.html Paxos算法在分布式领域具有非常重要的地位.但是Paxos算法有 ...
- CF888G Xor-MST[最小生成树+01trie]
前注:关于这题,本人的解法暂时没有成功通过此题,原因是被卡常了.可能需要等待某种机缘来请人调试. 类似uoj的一道题(新年的繁荣),不过是一个有些简单的版本. 因为是完全图,有没有办法明显优化建边,所 ...
- 12-SSMS图形化工具中不允许保存修改的解决办法
1.报出的警告 2.解决办法 工具-->选项-->设计器--->表设计和数据库设计器-->阻止保存要求重新创建表的更改 的勾去掉就OK 了
- 消金ABS
对于持牌消金公司来说,发行ABS需满足至少3年经营期限的硬性规定,目前已开业的24家消金公司里,有15家符合此项规定. 2019年下半年以来,个人消费金融领域共发行了15个资产证券化产品,发行规模达4 ...
- Java-Base64Fiend工具类
import java.io.ByteArrayInputStream; import java.io.ByteArrayOutputStream; import java.io.File; impo ...