Oracle分区表的使用在一定程度上提高了对表数据的存储及处理性能,在查询性能和数据存储安全上体现了其特有的优势,因此很好的利用分区表,在一定程度上有利于数据库性能的优化。而Oracle分区表数据的导入导出也成了这些工作中不可忽略的一部分。分区表的导入导出同普通表的导入导出方式没有什么很大区别,只不过在导入导出时需要考虑到分区的特殊性,如:分区索引,将分区迁移到普通表,或使用原始分区表导入到新的分区表。下面将描述使用imp/exp,impdp/expdp导入导出分区表数据。

有关分区表的特性请参考:

有关导入导出工具请参考:

有关导入导出的官方文档请参考:

一、分区级别的导入导出

1、可以导出一个或多个分区,也可以导出所有分区(即整个表)。

2、可以导入所有分区(即整个表),一个或多个分区以及子分区。

3、对于已经存在数据的表,使用imp导入时需要使用参数IGNORE=y;而使用impdp导入数据时,需要加table_exists_action=append。

4、相关参数的说明,ignore=y(表示忽略创建错误,继续后面的操作),statistics=none(表示不接收统计信息)。

二、创建测试实例

1、查看当前Oracle数据库版本

select * from v$version where rownum<2

BANNER

-------------------------------------------------------------

Oracle9i Enterprise Edition Release 9.2.0.1.0 -

Production

2、创建一个分区表

create table test_pt

(

tid number primary key not null,

sdate date not null,

srow number(8) not null

)

partition by range(srow)

(

partition p1 values less than(100),

partition p2 values less than(200),

partition p3 values less than(maxvalue)

)nologging;

其中,tid为自增序列,需要创建对应的序列和触发器,其创建脚本如下:

创建序列脚本:

create sequence sq_test_pt

increment by 1 start with 1

maxvalue 1.0E28

minvalue 1

nocycle cache 20 order;

创建触发器脚本:

create or replace trigger tr_test_pt

before insert on test_pt for each row

begin

select sq_test.nextval into :new.tid from dual;

end;

3、为分区表插入数据

insert into test_pt(sdate,srow) select trunc(sysdate),rownum

from dual connect by level<=5000;

commit;

4、查询分区表数据

select count(*) from test_pt

COUNT(*)

--------------

5000

select count(*) from test_pt partition(p1)

COUNT(*)

---------------

99

select count(*) from test_pt partition(p3)

COUNT(*)

---------------

4801

select * from test_pt partition(p2) where rownum

TID  SDATE  SROW

----- --------------- -------

5720 2013-1-17 100

5721 2013-1-17 101

三、使用exp/imp进行数据导出、导入操作

1、导出整个分区表

在windows CMD命令下执行导出语句。

C:\Documents and Settings\Administrator>exp orcluser/orcl

file='c:\test_pt.dmp'

log='c:\test_pt.log' tables=test_pt

Export: Release 9.2.0.1.0 - Production on 星期二 1月 22 16:26:46

2013

Copyright (c) 1982, 2002, Oracle Corporation.

All rights reserved.

连接到: Oracle9i Enterprise Edition Release 9.2.0.1.0 -

Production

With the Partitioning, OLAP and Oracle Data Mining

options

JServer Release 9.2.0.1.0 - Production

已导出 ZHS16GBK 字符集和 AL16UTF16 NCHAR 字符集

即将导出指定的表通过常规路径 ...

. . 正在导出表  TEST_PT

. . 正在导出分区  P1  99 行被导出

. . 正在导出分区  P2  100 行被导出

. . 正在导出分区  P3  4801 行被导出

在没有警告的情况下成功终止导出。

2、导出单个(p1)分区

C:\Documents and Settings\Administrator>exp orcluser/orcl

file='c:\test_ptp1.dmp

' log='c:\test_ptp1.log' tables=test_pt:p1

statistics=none

Export: Release 9.2.0.1.0 - Production on 星期二 1月 22 16:30:32

2013

Copyright (c) 1982, 2002, Oracle Corporation.

All rights reserved.

连接到: Oracle9i Enterprise Edition Release 9.2.0.1.0 -

Production

With the Partitioning, OLAP and Oracle Data Mining

options

JServer Release 9.2.0.1.0 - Production

已导出 ZHS16GBK 字符集和 AL16UTF16 NCHAR 字符集

即将导出指定的表通过常规路径 ...

. . 正在导出表  TEST_PT

. . 正在导出分区  P1  99 行被导出

在没有警告的情况下成功终止导出。

3、导出多个分区(p1和p3区)数据

C:\Documents and Settings\Administrator>exp orcluser/orcl

file='c:\test_ptp13.dm

p' log='c:\test_ptp13.log' tables=(test_pt:p1,test_pt:p3)

statistics=none

Export: Release 9.2.0.1.0 - Production on 星期二 1月 22 16:34:17

2013

Copyright (c) 1982, 2002, Oracle Corporation.

All rights reserved.

连接到: Oracle9i Enterprise Edition Release 9.2.0.1.0 -

Production

With the Partitioning, OLAP and Oracle Data Mining

options

JServer Release 9.2.0.1.0 - Production

已导出 ZHS16GBK 字符集和 AL16UTF16 NCHAR 字符集

即将导出指定的表通过常规路径 ...

. . 正在导出表  TEST_PT

. . 正在导出分区  P1  99 行被导出

. . 正在导出分区  P3  4801 行被导出

在没有警告的情况下成功终止导出。

4、导入单个分区数据(使用之前备份的p1分区数据)

首先通过SQL语句删掉该分区(p1)的数据

alter table test_pt truncate partition p1;

然后再利用备份的数据test_ptp1.dmp实现恢复

C:\Documents and Settings\Administrator>imp orcluser/orcl

file='c:\test_ptp1.dmp

' tables=test_pt:p1 ignore=y

Import: Release 9.2.0.1.0 - Production on 星期二 1月 22 16:48:55

2013

Copyright (c) 1982, 2002, Oracle Corporation.

All rights reserved.

连接到: Oracle9i Enterprise Edition Release 9.2.0.1.0 -

Production

With the Partitioning, OLAP and Oracle Data Mining

options

JServer Release 9.2.0.1.0 - Production

经由常规路径导出由EXPORT:V09.02.00创建的文件

已经完成ZHS16GBK字符集和AL16UTF16 NCHAR 字符集中的导入

. 正在将ORCLUSER的对象导入到 ORCLUSER

. . 正在导入分区  "TEST_PT":"P1"

IMP-00058: 遇到 ORACLE 错误 1502

ORA-01502: 索引'ORCLUSER.SYS_C003020'或这类索引的分区处于不可用状态

成功终止导入,但出现警告。

注意:此时,出现错误“ORA-01502:

索引'ORCLUSER.SYS_C003020'或这类索引的分区处于不可用状态”的错误。提示此时的分区索引(此处为主键索引)处于脱机(offline)状态,需要将其修改为联机(online)状态。说明在对区数据进行截断时会导致索引脱机。

通过SQL语句执行:

alter index sys_c003020 rebuild

online;

此时再次执行上面的导入语句(成功导入数据):

C:\Documents and Settings\Administrator>imp orcluser/orcl

file='c:\test_ptp1.dmp

' tables=test_pt:p1 ignore=y

Import: Release 9.2.0.1.0 - Production on 星期二 1月 22 16:54:31

2013

Copyright (c) 1982, 2002, Oracle Corporation.

All rights reserved.

连接到: Oracle9i Enterprise Edition Release 9.2.0.1.0 -

Production

With the Partitioning, OLAP and Oracle Data Mining

options

JServer Release 9.2.0.1.0 - Production

经由常规路径导出由EXPORT:V09.02.00创建的文件

已经完成ZHS16GBK字符集和AL16UTF16 NCHAR 字符集中的导入

. 正在将ORCLUSER的对象导入到 ORCLUSER

. . 正在导入分区  "TEST_PT":"P1"  99行被导入

成功终止导入,但出现警告。

5、导入整个分区表

首先通过SQL将表中的数据清空

TRUNCATE TABLE TEST_PT;

SELECT COUNT(*) FROM TEST_PT

COUNT(*)

--------

0

利用前面的备份数据test_pt.dmp实现数据恢复

C:\Documents and Settings\Administrator>imp orcluser/orcl

tables=test_pt file='c

:\test_pt.dmp' ignore=y

Import: Release 9.2.0.1.0 - Production on 星期二 1月 22 17:04:51

2013

Copyright (c) 1982, 2002, Oracle Corporation.

All rights reserved.

连接到: Oracle9i Enterprise Edition Release 9.2.0.1.0 -

Production

With the Partitioning, OLAP and Oracle Data Mining

options

JServer Release 9.2.0.1.0 - Production

经由常规路径导出由EXPORT:V09.02.00创建的文件

已经完成ZHS16GBK字符集和AL16UTF16 NCHAR 字符集中的导入

. 正在将ORCLUSER的对象导入到 ORCLUSER

. . 正在导入分区  "TEST_PT":"P1"  99行被导入

. . 正在导入分区  "TEST_PT":"P2"  100行被导入

. . 正在导入分区  "TEST_PT":"P3"  4801行被导入

成功终止导入,但出现警告。

本文参考资料:http://blog.csdn.net/robinson_0612/article/details/6246738

oracle分区表分区导出,Oracle分区表数据的导入与导出相关推荐

  1. Oracle用imp和exp实现数据的导入和导出

    使用方法如下: Imp username/password@connect_string param=value - exp username/password@connect_string para ...

  2. matlab将图片导入工作区,matlab数据的导入和导出,以matlab工作区workspace为source和destination...

    MATLAB支持工作区的保存.用户可以将工作区或工作区中的变量以文件的形式保存,以备在需要时再次导入. 保存工作区可以通过菜单进行,也可以通过命令窗口进行. 数据导出 1. 保存整个工作区 选择Fil ...

  3. oracle导入失败后怎样删除已导入数据,Oracle数据的导入、导出、插入、更新及删除总结...

    Oracle数据的导入.导出.插入.更新及删除总结 今天主要介绍一下使用Oracle的IDE:PL\SQL Developer进行数据的导入及导出操做方法. web 1. 数据导出 数据的导出比较简单 ...

  4. R 数据的导入和导出

    2019独角兽企业重金招聘Python工程师标准>>> R 数据的导入和导出 这是从R中导入或导出数据的一个指导手册. 本文档的当前版本为0.01 β.该文档译自 R-2.6.1 文 ...

  5. mysql数据泵导入导出_ORACLE使用数据泵导入导出部分表

    1.导出名字为A的表(这里会导出SEQUENCES及FUNCTION等内容) expdp TEST/TEST@orcl schemas=TEST dumpfile=TEST.dmp DIRECTORY ...

  6. Java解析xml文件dom4j篇(基于xml配置文件完成Excel数据的导入、导出功能完整实现)

    DOM4J解析XML文件 dom4j是一个Java的XML API,是jdom的升级产品,用来读写XML文件.另外对比其他API读写XML文件,dom4j是一个十分优秀的JavaXML API,具有性 ...

  7. Hadoop之Hive数据的导入与导出(DML)

    上一张章节我们已经讲完了数据库和表的增删改查,感兴趣的小伙伴可以点这里: Hadoop之Hive数据库和表的增删改查(DDL). 本章节将要学习对数据操作的DML,主要包括数据的导入和导出,清除. 目 ...

  8. 基于Metronic的Bootstrap开发框架经验总结(7)--数据的导入、导出及附件的查看处理...

    在很多系统模块里面,我们可能都需要进行一定的数据交换处理,也就是数据的导入或者导出操作,这样的批量处理能给系统用户更好的操作体验,也提高了用户录入数据的效率.我在较早时期的EasyUI的Web框架上, ...

  9. MySQL基础day03_数据的导入、导出-MySQL 5.6

    MySQL基础day03_数据的导入.导出-MySQL 5.6 注:把数据按照一定格式存放到文件里才能进行数据的导入. 1,数据导入的条件 把文件里的内容保存到数据的表里: 把数据按照一定格式存放文件 ...

  10. (转)基于Metronic的Bootstrap开发框架经验总结(7)--数据的导入、导出及附件的查看处理...

    http://www.cnblogs.com/wuhuacong/p/4777720.html 在很多系统模块里面,我们可能都需要进行一定的数据交换处理,也就是数据的导入或者导出操作,这样的批量处理能 ...

最新文章

  1. LeetCode简单题之将所有数字用字符替换
  2. LR11之web_reg_find文本检查点的使用
  3. CRM项目经验总结-从DAO层到链接数据池
  4. es6学习笔记11--Proxy和Reflect
  5. PROC系列之/proc/stat/
  6. TCP/IP 中的二进制反码求和算法
  7. POJ 1150 The Last Non-zero Digit 数论+容斥
  8. 怎么在linux的cmd中运行c项目,如何在cmd窗口编译运行c语言程序?
  9. 容器日志管理 (2) 开源日志管理方案 ELK/EFK
  10. gazebo 直接获取传感器数据_【ROS-Gazebo】IMU插件使用与数据采集——以四足机器人pigot为例...
  11. Spring-自定义类实现AOP(八)
  12. 阅读理解常规解题思路
  13. switch更新主机服务器维护,switch更新链接不到服务器
  14. 《嵌入式 - 语音识别TWen-ASR-ONE开发笔记》第5章 TWen-ASR-ONE 串口使用
  15. 苹果官方mfi认证名单_阿里六星级运营服务商名单出炉!获得官方认证的公司花落谁家?...
  16. 【周记】腾讯犀牛鸟「云开发」校园技术布道师养成计划
  17. 07-PDI(Kettle)源码编译8.2.0.0.R版本
  18. 国内网页无法加载reCAPTCHA解决方案
  19. 图像质量调试色温值对照2021-04-20
  20. PADS的layout单个元器件删除时提示“复用元素无法修改,首先打散复用模块”

热门文章

  1. Andriod WIFI 隐藏SSID
  2. git安装 tor_tortoriseGit的使用
  3. 2020年蜀山区信息学竞赛试卷(小学组)
  4. 努比亚Z9 / Z9MAX Plus 换电池教程 NX508J NX510J
  5. [批处理]自己写的“WindowsXP关机定时器”(提供源码和下载)
  6. [算法导论] Alpha-Beta 剪枝(Alpha-Beta Pruning)
  7. LATEX中常用的插图和插表格的方法
  8. 基于51单片机的MQ-5天然气监测报警系统设计
  9. Android版本适配
  10. java web——servlet+jsp实现前后台交互