问题描述:

ORACLE11g使用impdp数据泵导入时遭遇:

ORA-01691: Lob 段 ISCS.SYS_LOB0000100750C00045$$ 无法通过 128 (在表空间 RT_DATA 中) 扩展

还可能遇到TEMP和UNDO表空间不足:

ORA-30036: 无法按 8 扩展段 (在还原表空间 'UNDOTBS1' 中)

ORA-01652: 无法按 8 扩展段 (在还原表空间 'TEMP 中)

解决方式:

查看RT_DATA表空间下面的段使用情况:

select *
  from (select owner,
               segment_name,
               tablespace_name,
               segment_type,
               bytes / 1024 / 1024 AS "SIZE(M)"
          from dba_segments
         order by 5 desc)
 where TABLESPACE_NAME = 'RT_DATA'
   AND rownum < 20;

LOBSEGMENT的系统命名规则是:

SYS_LOB(10 digit object_id)C(5 digit col#)$$   表段
SYS_IL(10 digit object_id)C(5 digit col#)$$        索引

查看段空间使用者:

select * from dba_objects where object_id='0000100750';

最终发现11g导入时,impdp命令在默认表空间RT_DATA中生成的sys_import_table_01表中字段xml_clob为可变字段,且占用大量空间,下面是11条记录的片段。

select object_name,
       object_schema,
       partition_name,
       subpartition_name,
       object_tablespace,
       xml_clob,
       round(dbms_lob.getlength(xml_clob) / 1024 ) as "XML_CLOB SIZE(K)"
  from SYS_IMPORT_TABLE_01
 where rownum < 12;

相比10g的sys_import_table_01 ,11g增加了子分区的描述,从该表由原来82列变为95列,11g中在该表中对子分区的记录,会导致xml_clob列占用空间巨大,上述结果中子分区每条信息占用导致默认表空间爆满。

而这个原因目前不得而知,网上资料甚少,还请高手指点。不过可以通过手动扩展或自动扩展默认表空间,等完成导入之后,再收缩默认表空间。

方法一(手动扩展):

alter database datafile '/data1/oradata/i1000/rt_data01.dbf' resize 10G;

impdp结束后:

alter database datafile '/data1/oradata/i1000/rt_data01.dbf' resize 2G;

方法二(自动扩展):

alter database datafile '/data1/oradata/i1000/rt_data01.dbf'  autoextend on;

impdp结束后:

alter database datafile '/data1/oradata/i1000/rt_data01.dbf' resize 2G autoextend off ;

如果遭遇temp和undo表空间不足,亦如此扩展。

11g导入大量包含子分区的数据时表空间不足的更多相关文章

  1. Oracle 数据备份、恢复以及导入时表空间不存在的解决方案

    一.数据备份(导出) 1.exp命令导出dmp文件(exp -help查看帮助信息) 命令:exp username/userpasswd@192.168.99.199/orcl file=C:\jd ...

  2. Oracle添加数据文件创建表空间,创建用户代码

    1,添加数据文件创建表空间 CREATE TABLESPACE "TEST1" DATAFILE 'D:\ORACLE\11G\ORADATA\ORCL\TEST1.DBF' SI ...

  3. 关于IMP由拥有DBA权限的用户EXP数据时,数据存放表空间的几种情况(IMP-00013) -1

    关于IMP由拥有DBA权限的用户EXP数据时,数据存放表空间的几种情况(IMP-00013) -1 ORACLE公司来培训BIEE,带了一个DEMO的DMP文件,其导出用户DBO具有DBA权限,缺省表 ...

  4. exp和imp导入导出时表空间问题【未完】

    准备工作 第一步: 创建教师和学生用户 教师用户/密码 TEACHER/t123456 学生用户/密码 STUDENT/s123456 参考链接 http://www.cnblogs.com/what ...

  5. 【Oracle】删除(释放)数据文件/表空间流程

    oracle删除(释放)数据文件/表空间流程 生产环境:数据库里空间不足,niptest 表空间251G,只使用了17G 再alter database datafile '...../niptest ...

  6. 1118ALTER TABLE tabname DISCARD TABLESPACE快速导入数据利用表空间

    -- 快速导入数据如果你有.ibd文件的一个干净的备份,你可以按如下操作从被起源的地方恢复它到MySQL安装中:相当快速 1. 发出这个ALTER TABLE语句: 2. ALTER TABLE tb ...

  7. 如何删除offline数据文件/表空间上的分区

    接上一篇"Oracle 10g RAC全库flashback " http://www.cnblogs.com/cqubityj/p/3265552.html 在打开数据库之前把2 ...

  8. 使用phpexcel导入excel文件种的时期数据时数据导入格式

    在使用phpexcel导入类似于 YYYY-MM-DD HH:ii:ss格式的数据时,导入成功以后会发现导入的数据其实是类似于42085.746516204格式的数据( excel在存储时间类型的数据 ...

  9. Oracle 删除用户和表空间////Oracle创建删除用户、角色、表空间、导入导出、...命令总结/////Oracle数据库创建表空间及为用户指定表空间

    Oracle 使用时间长了, 新增了许多user 和tablespace. 需要清理一下 对于单个user和tablespace 来说, 可以使用如下命令来完成. 步骤一:  删除user drop ...

随机推荐

  1. node 安装express

    环境:win7 64位旗舰版 1 安装nodejs 2 安装npm 3 安装express 重点介绍安装express,前提是你已经安装nodejs和npm了. 1 安装express npm ins ...

  2. C# 获取配置文件节点值

    <?xml version="1.0" encoding="utf-8" ?><configuration>  <appSetti ...

  3. C++实现二叉树的基本操作

    #include <iostream> #include <stack> #include <queue> using std::cin; using std::c ...

  4. XtraReport改变纸张方向

    XtraReport纸张方向改变可以通过修改Landscape属性: Landscape=true 为横向输出 Landscape=false 为纵向输出

  5. css盒子模型,定位,浮动

    1.盒子模型 Margin(外边距) - 清除边框外的区域,外边距是透明的. Border(边框) - 围绕在内边距和内容外的边框. Padding(内边距) - 清除内容周围的区域,内边距是透明的. ...

  6. (原)ubuntu14手动安装matplotlib1.5

    转载请注明出处: http://www.cnblogs.com/darkknightzh/p/5681059.html 参考网址: http://matplotlib.org/users/instal ...

  7. zabbix之1监控概念

    1.通过通用的snmp监控,无需代理端 2.通过snmp代理 snmp代理的工作原理:在被监控端设置代理,代理不断的获取本地数据,而管理端定期通过代理获取监控数据. snmp目前有v1,v2,v3三种 ...

  8. SQL Sever 各版本下载 SQL Server 2012下载SQL Server 2008下载SQL Server 2005

    SQL Server 2012SQL Server 2012 开发版(DVD)(X64,X86)(中文简体)ed2k://|file|cn_sql_server_2012_developer_edit ...

  9. 【在Windows下进行的编程人员,你真的需要学习下Linux】

    从业几年,发现好多编程人员,严重依赖UI工具.对一些命令操作,十分的反感.尤其是从事Windows系统中的程序开发的人员.由于微软对开发工具,编程套件的极限优化.开发出更多的 面向UI的开发工具.从V ...

  10. 【转】ARM交叉编译工具链

    原文网址:http://www.veryarm.com/cross-tools 为什么要用交叉编译器? 交叉编译通俗地讲就是在一种平台上编译出能运行在体系结构不同的另一种平台上的程序,比如在PC平台( ...