当前位置:  数据库>oracle

Oracle expdp 过滤和并行

    来源: 互联网  发布时间:2017-05-26

    本文导语: 写在前面的话: 我们知道调用数据泵的方式可以有3种,在这里我绝对不会使用命令行而是首推脚本方式 放弃命令行的理由大概有这些: ① 操作系统对CLI字符数的限制② 令人痛恨的转义符③ 无法跨平台重用④ 官方文档到处鼓...

写在前面的话:

我们知道调用数据泵的方式可以有3种,在这里我绝对不会使用命令行而是首推脚本方式

放弃命令行的理由大概有这些:

① 操作系统对CLI字符数的限制
② 令人痛恨的转义符
③ 无法跨平台重用
④ 官方文档到处鼓吹用脚本方式

㈠ 过滤对象/数据篇

⑴ 过滤对象

INCLUDE

EXCLUDE和INCLUDE用法相同,这里就谈INCLUDE

语法

INCLUDE = object_type[:name_clause] [, ...]

object_type:常用有TABLE、INDEX、CONSTRAINT、GRANT,更多的我们可以查阅

database_export_objects,schema_export_objects,table_export_objects

name_clause:sql语句

相关的索引、约束等都会很讲义气地被一起导出

例子

题目:导出所有以 emp 开头的表

参数文件写法如下:

[Oracle@bogon ~]$ cat hr.par
SCHEMAS=HR
DUMPFILE=hr.dmp
DIRECTORY=dmpdir
LOGFILE=hr.log
INCLUDE=TABLE:"like 'EMP%'"

这个文件里,INCLUDE也可以这么写

INCLUDE=TABLE:"IN (select table_name from user_tables where table_name like 'EMP%')"

⑵ 过滤数据

QUERY

语法

QUERY = [schema.][table_name:] query_clause

该参数和以下几个为互斥关系

CONTENT=METADATA_ONLY

ESTIMATE_ONLY

TRANSPORT_TABLESPACES

例子

题目:导出部门号为50,员工号大于128的所有员工资料

参数文件写法如下:

[oracle@bogon ~]$ cat hr.par
SCHEMAS=HR
DUMPFILE=hr02.dmp
DIRECTORY=dmpdir
LOGFILE=hr02.log
INCLUDE=TABLE:"IN ('EMPLOYEES','DEPARTMENTS')"
QUERY=EMPLOYEES:"where employee_id>=128",DEPARTMENTS:"where department_id=20"

㈡ 并行导出篇

并行设置的结果无非3种:变得更好、没有变化、变得更差

效率是否得到提高,并不取决于你设置了多碉堡的参数,参数和参数值是否合适方为根本

并行需要成本,因为并行之前需对服务器资源综合权衡,计算并行,分配任务

并行设置是门艺术,因为PARALLEL经常是要跟FILESIZE,DUMPFILE一起考虑

下面是官方文档给的一个并行优化实例:

expdp hr/hr FULL=y DUMPFILE=dpump_dir1:full1%U.dmp, dpump_dir2:full2%U.dmp
FILESIZE=2G PARALLEL=3 LOGFILE=dpump_dir1:expfull.log JOB_NAME=expfull

另外,并行度的设置不应该超过CPU数量的2倍

sys@ORCL> show parameter cpu

NAME                                TYPE        VALUE
------------------------------------ ----------- ------------------------------
cpu_count                            integer    1

By DBA_WaterBin
2013-09-05

GOOD Luck

相关阅读:

通过expdp&impdp把11g的数据迁移到10g平台的要点

Oracle Data Pump使用范例及部分注意事项(expdp/impdp)

Oracle datapump expdp/impdp 导入导出数据库时hang住

expdp/impdp做Oracle 10g 到11g的数据迁移


    
 
 
 
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 基于oracle expdp命令的使用详解
  • Oracle 12c发布简单介绍及官方下载地址
  • 在linux下安装oracle,如何设置让oracle自动启动!也就是让oracle那个服务自动启动,不是手动的
  • oracle 11g最新版官方下载地址
  • 请问su oracle 和su - oracle有什么不同?
  • Oracle 数据库(oracle Database)Select 多表关联查询方式
  • 虚拟机装Oracle R12与Oracle10g
  • Oracle数据库(Oracle Database)体系结构及基本组成介绍
  • Oracle 数据库开发工具 Oracle SQL Developer
  • 如何设置让Oracle SQL Developer显示的时间包含时分秒
  • Oracle EBS R12 支持 Oracle Database 11g
  • Oracle 10g和Oracle 11g网格技术介绍
  • SCO unix下安装oracle,但没有光盘,请大家推荐一个oracle下载站点(unix版本的)。谢谢!!!!
  • oracle中如何把表中具有相同值列的多行数据合并成一行
  • 请问大家用oracle数据库, 用import oracle.*;下的东西么? 还是用标准库?
  • Oracle 数据库(oracle Database)性能调优技术详解
  • Linux /$ORACLE_HOME $ORACLE_HOME
  • ORACLE日期相关操作
  • Linux系统下Oracle的启动与Oracle监听的启动
  • ORACLE数据库常用字段数据类型介绍
  • 请问在solaris下安装ORACLE,用root用户和用oracle用户安装有什么区别么?
  • Oracle 12c的九大最新技术特性介绍
  • 网间Oracle的连接,远程连接Oracle服务器??


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,