Oracle的数据泵功能在10g中被引进。本文对数据泵在12c中的增强做一个概览。

1. 禁用日志选项(DISABLE_ARCHIVE_LOGGING)

Impdp的TRANSFORM参数已经扩展为包括DISABLE_ARCHIVE_LOGGING选项。该选项的默认值为

"N",不会影响日志行为。将该选项设置为"Y",这将会使表和索引在导入前将日指属性设置为NOLOGGING,从而导入期间减少相关日志的产生,导入后再将日志属性重置为LOGGING。

TRANSFORM=DISABLE_ARCHIVE_LOGGING:Y

通过附上对象类型,可以把影响限定为特定对象类型(TABLE or INDEX)。

TRANSFORM=DISABLE_ARCHIVE_LOGGING:Y:TABLE

TRANSFORM=DISABLE_ARCHIVE_LOGGING:Y:INDEX

如下例所示。

$ impdp

system/Password1@pdb1directory=test_dir dumpfile=emp.dmp

logfile=impdp_emp.log \

remap_schema=scott:test transform=disable_archive_logging:y

如果数据库运行在FORCE LOGGING模式下,DISABLE_ARCHIVE_LOGGING选项将没什么影响。

2. LOGTIME参数

LOGTIME参数决定时间戳是否将包括在expdp和impdp功能的输出信息中。

LOGTIME=[NONE | STATUS |LOGFILE | ALL]

可用值如下。

1) NONE :默认值,指示输出中不包括时间戳,输出和之前的版本相似。

2) STATUS :时间戳包括在控制台输出中,但不会在日志文件中出现。

3) LOGFILE:时间戳出现在日志文件中,但不会输出到控制台。

4) ALL :时间戳出现在日志文件和控制台输出中。

如下例所示。

$ expdp

scott/tiger@pdb1 tables=empdirectory=test_dir dumpfile=emp.dmp

logfile=expdp_emp.loglogtime=all

Export:

Release 12.1.0.1.0 - Production onWed Nov 20 22:11:57 2013

Copyright (c) 1982, 2013, Oracle and/or

itsaffiliates. All rights reserved.

Connected to: Oracle Database 12c EnterpriseEdition Release

12.1.0.1.0 - 64bit Production

With the

Partitioning, Oracle Label Security,OLAP, Advanced Analytics

and Real

Application Testing options

20-NOV-13 22:12:09.312:

Starting"SCOTT"."SYS_EXPORT_TABLE_01": scott/********@pdb1 tables=empdirectory=test_dir dumpfile=emp.dmp

logfile=expdp_emp.log logtime=all

20-NOV-13 22:12:13.602: Estimate in progressusing BLOCKS

method...

20-NOV-13 22:12:17.797: Processing objecttype

TABLE_EXPORT/TABLE/TABLE_DATA

20-NOV-13 22:12:18.145: Total estimationusing BLOCKS method: 64

KB

20-NOV-13 22:12:30.583: Processing objecttype

TABLE_EXPORT/TABLE/TABLE

20-NOV-13 22:12:33.649: Processing objecttype

TABLE_EXPORT/TABLE/INDEX/INDEX

20-NOV-13 22:12:37.744: Processing objecttype

TABLE_EXPORT/TABLE/CONSTRAINT/CONSTRAINT

20-NOV-13 22:12:38.065: Processing objecttype

TABLE_EXPORT/TABLE/INDEX/STATISTICS/INDEX_STATISTICS

20-NOV-13 22:12:38.723: Processing objecttype

TABLE_EXPORT/TABLE/CONSTRAINT/REF_CONSTRAINT

20-NOV-13 22:12:41.052: Processing objecttype

TABLE_EXPORT/TABLE/STATISTICS/TABLE_STATISTICS

20-NOV-13 22:12:41.337: Processing objecttype

TABLE_EXPORT/TABLE/STATISTICS/MARKER

20-NOV-13 22:13:38.255: . .

exported"SCOTT"."EMP" 8.75

KB 14 rows

20-NOV-13 22:13:40.483: Master table"SCOTT"."SYS_EXPORT_TABLE_01"

successfully loaded/unloaded

20-NOV-13

22:13:40.507:******************************************************************************

20-NOV-13 22:13:40.518: Dump file set forSCOTT.SYS_EXPORT_TABLE_01

is:

20-NOV-13 22:13:40.545: /home/oracle/emp.dmp

20-NOV-13 22:13:40.677: Job"SCOTT"."SYS_EXPORT_TABLE_01"

successfully completed at WedNov 20 22:13:40 2013 elapsed 0

00:01:36

$

3. 像表一样导出视图

VIEWS_AS_TABLES参数允许把视图当成表导出。表结构匹配视图列,视图查询结果对应表数据。

VIEWS_AS_TABLES=[schema_name.]view_name[:table_name],...

如下例所示。

CONN

scott/tiger@pdb1

CREATE

VIEW emp_v AS

SELECT * FROM emp;

用VIEWS_AS_TABLES参数导出视图。

$ expdp

scott/tiger views_as_tables=scott.emp_vdirectory=test_dir

dumpfile=emp_v.dmp logfile=expdp_emp_v.log

Expdp默认会创建一个临时表来作为视图的拷贝,但不包含数据,只是为导出提供一个元数据源。此外,也可以确定一个结构合适的表来代替。但这也许只有在只读库上才有意义。

4. 导入时改变表压缩

TRANSFORM参数的TABLE_COMPRESSION_CLAUSE子句允许表导入过程中动态改变表的压缩特性。

TRANSFORM=TABLE_COMPRESSION_CLAUSE:[NONE |compression_clause]

TABLE_COMPRESSION_CLAUSE参数的可选值如下。

1) NONE :漏掉表压缩子句,表继承表空间的压缩属性。

2) NOCOMPRESS:禁用表压缩。

3) COMPRESS:开启基本表压缩。

4) ROW STORE COMPRESSBASIC :和COMPRESS一样。

5) ROW STORE COMPRESSADVANCED :开启高级压缩,也被称为OLTP压缩。

6) COLUMN STORECOMPRESS FOR QUERY :Exadata和ZFS存储配置中可用的混合列压缩(HCC)。

7) COLUMN STORECOMPRESS FOR ARCHIVE :Exadata和ZFS存储配置中可用的混合列压缩。

包括空格的压缩子句需要用单引号或双引号括起来。

如下例所示。

$ impdp

system/Password1@pdb1directory=test_dir dumpfile=emp.dmp

logfile=impdp_emp.log \

remap_schema=scott:test transform=table_compression_clause:compress

5. 导入时改变表的LOB存储

TRANFORM参数的LOB_STORAGE子句使得在进行非可传输导入操作时改变表的压缩特性。

TRANSFORM=LOB_STORAGE:[SECUREFILE | BASICFILE| DEFAULT |

NO_CHANGE]

LOB_STORAGE子句可以为如下值。

1) SECUREFILE :LOB数据存储为SecureFiles。

2) BASICFILE :LOB数据存储为BasicFiles。

3) DEFAULT :LOB数据的存储由数据库自行决定。

4) NO_CHANGE :LOB数据的存储和原来的对象一样。

举例如下。

$ impdp

system/Password1@pdb1directory=test_dir dumpfile=lob_table.dmp

logfile=impdp_lob_table.log \

transform=lob_storage:securefile

6. 导出文件压缩选项

作为高级压缩选项的一部分,你可以确定COMPRESSION_ALGORITHM参数以确定导出文件的压缩级别。这和先前讨论的表压缩没关系。

COMPRESSION_ALGORITHM=[BASIC | LOW | MEDIUM |HIGH]

可用值如下。

1) BASIC :和先前版本的压缩算法一样。提供很好的压缩,但对性能影响不大。

2) LOW :用于降低CPU消耗比压缩率更重要的场景。

3) MEDIUM :推荐使用的选项。和BASIC特性类似,但用了不同的算法。

4) HIGH:最大限度压缩,但会消耗更多CPU。

举例如下。

$ expdp

scott/tiger tables=empdirectory=test_dir dumpfile=emp.dmp

logfile=expdp_emp.log \

compression=all

compression_algorithm=medium

7. 多宿主选项支持(CDB和PDB)

Oracle12c引进了多宿主选项,允许多个可插拔数据库(PDBs)存在于一个容器数据库(CDB)。将数据泵用于PDB和用于非CDB数据库没太大差别。

从11.2.0.2库以FULL选项导出的数据可以导入一个新PDB中,这和之前的完全导入一样,但会有些限制。

8. 审计命令

通过创建审计策略,可以对Oracle 12c的数据泵作业进行审计。

CREATE

AUDIT POLICY policy_name

ACTIONS COMPONENT=DATAPUMP [EXPORT | IMPORT |

ALL];

当该策略用于用户时,用户的数据泵作业信息将被审计。如下策略会审计所有的数据泵操作。该策略被用于用户SCOTT。

CONN /

AS SYSDBA

CREATE

AUDIT POLICY aud_dp_plcy ACTIONSCOMPONENT=DATAPUMP ALL;

AUDIT

POLICY aud_dp_plcy BY scott;

运行如下数据泵命令。

$ expdp

scott/tiger tables=empdirectory=test_dir dumpfile=emp.dmp

logfile=expdp_emp.log

检查审计信息时,会发现该数据泵作业已被审计。

-- Flush

audit information to disk.

EXECDBMS_AUDIT_MGMT.FLUSH_UNIFIED_AUDIT_TRAIL;

SET

LINESIZE 200

COLUMN

event_timestamp FORMAT A30

COLUMN

dp_text_parameters1 FORMAT A30

COLUMN

dp_boolean_parameters1 FORMAT A30

SELECT

event_timestamp,

dp_text_parameters1,

dp_boolean_parameters1

FROM unified_audit_trail

WHERE audit_type = 'Datapump';

EVENT_TIMESTAMP

DP_TEXT_PARAMETERS1 DP_BOOLEAN_PARAMETERS1

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

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

14-DEC-13 09.47.40.098637 PM MASTER TABLE: "SCOTT"."SYS_EX MASTER_ONLY:FALSE,

DATA_ONLY:

PORT_TABLE_01" , JOB_TYPE: EXP FALSE,

METADATA_ONLY: FALSE,

ORT, METADATA_JOB_MODE: TABLE_DUMPFILE_PRESENT: TRUE, JOB_RE

EXPORT, JOB VERSION: 12.1.0.0. STARTED:FALSE

0, ACCESS METHOD: AUTOMATIC, D

ATA OPTIONS: 0, DUMPER DIRECTO

RY: NULL REMOTE LINK: NULL, T

ABLE EXISTS: NULL, PARTITION O

PTIONS: NONE

SQL>

9. 加密口令增强

先前的版本中,数据泵加密口令需要在命令行输入ENCRYPTION_PASSWORD参数,这样很容易偷窥口令。

Oracle

12c中,ENCRYPTION_PWD_PROMPT参数可以加密但不要求在命令行输入口令,而是运行时提示用户输入口令,且命令不回显。

ENCRYPTION_PWD_PROMPT=[YES | NO]

举例如下。

$ expdp

scott/tiger tables=empdirectory=test_dir dumpfile=emp.dmp

logfile=expdp_emp.log \

encryption_pwd_prompt=yes

Export:

Release 12.1.0.1.0 - Production onSat Dec 14 21:09:11 2013

Copyright (c) 1982, 2013, Oracle and/or

itsaffiliates. All rights reserved.

Connected to: Oracle Database 12c EnterpriseEdition Release

12.1.0.1.0 - 64bit Production

With the

Partitioning, OLAP, AdvancedAnalytics and Real Application Testing

options

Encryption Password:

Starting"SCOTT"."SYS_EXPORT_TABLE_01": scott/******** tables=emp directory=test_dir

dumpfile=emp.dmp logfile=expdp_emp.logencryption_pwd_prompt=yes

Estimate

in progress using BLOCKS method...

Processing object typeTABLE_EXPORT/TABLE/TABLE_DATA

Total

estimation using BLOCKS method: 64 KB

Processing object typeTABLE_EXPORT/TABLE/TABLE

Processing object typeTABLE_EXPORT/TABLE/INDEX/INDEX

Processing object typeTABLE_EXPORT/TABLE/CONSTRAINT/CONSTRAINT

Processing object

typeTABLE_EXPORT/TABLE/INDEX/STATISTICS/INDEX_STATISTICS

Processing object

typeTABLE_EXPORT/TABLE/CONSTRAINT/REF_CONSTRAINT

Processing object

typeTABLE_EXPORT/TABLE/STATISTICS/TABLE_STATISTICS

Processing object typeTABLE_EXPORT/TABLE/STATISTICS/MARKER

Processing object typeTABLE_EXPORT/TABLE/POST_TABLE_ACTION

. .

exported"SCOTT"."EMP" 8.765

KB 14 rows

Master

table"SCOTT"."SYS_EXPORT_TABLE_01" successfully loaded/unloaded

******************************************************************************

Dump

file set for SCOTT.SYS_EXPORT_TABLE_01is:

/tmp/emp.dmp

Job"SCOTT"."SYS_EXPORT_TABLE_01" successfully completed at SatDec

14 21:09:55 2013 elapsed 0 00:00:41

$

10. 可传输数据库

现在,TRANSPORTABLE选项可以和 FULL选项一起使用来传输整个数据库。

$ expdp

system/Password1 full=Ytransportable=always version=12

directory=TEMP_DIR \

dumpfile=orcl.dmp

logfile=expdporcl.log

该方法也可以被用来升级数据库。

11. 其他增强

1) 数据泵支持扩展数据类型,但VERSION参数需要设置为12.1之后的版本。

2) 有域索引的LOB列现在可以充分里用直接路径加载的优势。

oracle数据泵能增量吗,Oracle12c中数据泵新特性之功能增强(expdp, impdp)相关推荐

  1. 详细解读Windows8.1 Update中的WIMBoot新特性

    微软在Windows8.1 Update发布免费更新后,越来越多win8系统用户选择了升级,在Windows8.1 Update全新系统中有一项WIMBoot新技术,面对新特性很多用户还是一筹莫展,不 ...

  2. Python 3.11 中的最佳新特性和修正

    更快的解释器,更易懂的错误,更强大的类型提示,以及其他一系列的加速和调整,现在都可以试用了. Python 每年都会发布新版本,上半年是功能锁定的测试版,年底是最终版本. Python 3.11 的特 ...

  3. 解读ASP.NET 5 MVC6系列(17):MVC中的其他新特性

    原文:解读ASP.NET 5 & MVC6系列(17):MVC中的其他新特性 (GlobalImport全局导入功能) 默认新建立的MVC程序中,在Views目录下,新增加了一个_Global ...

  4. CSS3中的一些新特性(CSS)

    CSS3中的一些新特性 CSS3能做什么 边框 阴影 box-shadow 颜色 文字与字体 背景 CSS3中的动画 CSS3是CSS2的升级版本,3只是版本号,它在CSS2.1的基础上增加了很多强大 ...

  5. oracle数据库备份恢复后乱码,RMAN做数据文件恢复后,查询表中数据出现乱码

    今天在学习RMAN恢复数据库时,恢复后的数据库查询表出现乱码: 1:完全备份数据库 MAN>backup database format 'd:\orabackup\%u.bak'; 启动 ba ...

  6. 如果去掉数学前后的空格_excel表格数据消除前后空格-EXCEL表格中数据后面的空格怎么去掉,一条条手工删......

    excel表格中,单元格的内容后面总是有一个空格,怎... 准备工具/材料:windows10电脑,excel软件. 单元格的内容后面去除空格的方法如下: 1.首先,打开需要设置的excel文件. 2 ...

  7. 一文看懂数据治理,谈谈数字化转型中数据治理的实践经验

    以下文章来源于数据驱动智能 ,作者晓晓 如果管理得当,数据可以成为组织最有价值的资产,帮助组织保持竞争力和敏捷性,主动满足客户需求,并控制成本.各种规模的组织都在努力将数据作为资产进行管理,以便在多个 ...

  8. mysql删除表中所有数据_MySQL删除或清空表中数据的方法

    原标题:MySQL删除或清空表中数据的方法 要想把MySQL中的数据删除或清空,可以通过两种方法来实现:DELETE语句和TRUNCATE TABLE语句. DELETE语句可以将表中所有记录都删除, ...

  9. oracle11gR版本GI中新增,Oracle11g新特性MemberKillEscalation简介

    从oracle 11gR1 开始,Member Kill Escalation的出现成功的解决了前面提到的情况.当实例eviction在指定的时间内(默认20秒)不能 首先我们介绍一下历史.在Orac ...

最新文章

  1. 大众点评数据平台架构变迁
  2. toString,toLocaleString,valueOf的不同
  3. 正确预测适合自己的职业
  4. IT旅途——程序员面试经验分享
  5. java传值和通过引用传递
  6. node.js require 自动执行脚本 并生成html,nodejs 执行脚本并实时输出
  7. 阿里云MVP第六期发布——覆盖全球20多个国家和地区,成为数字化转型的中坚力量...
  8. 面向 Android* Jelly Bean 4.3 的英特尔® 凌动™ x86 映像安装指南 - 推荐
  9. ElasticSearch从入门到精通:Logstash妙用
  10. Deepin 深度Linux系统安装教程
  11. 【线性分类器】线性分类器理论知识
  12. ModifyStyle
  13. MariaDB—— 14.存储引擎
  14. C++ 基础练习 圆的面积
  15. 艾永亮:疯传的秘密,一个手表如何一夜之间席卷全校?(下)
  16. 人工智能服务器中涉及到哪些技术
  17. 【代码写春联】新年新祝福,算算你的运势,教你如何用MATLAB以烟花、对联的形式打开2022年,爱满人间(附MATLAB和Python代码实现)
  18. java登录无线路由器_获取WiFi路由器的唯一标识符
  19. iPhone通讯录导入及备份方法
  20. Revit链接CAD

热门文章

  1. GRE Tunnel实现企业网中的***
  2. SAP系统的模块分类
  3. 深度学习PyTorch,TensorFlow中GPU利用率较低,使用率周期性变化的问题
  4. 【运维理论】RAID级别简介
  5. USACO 3.2.6 Sweet Butter 香甜的黄油(最短路)
  6. 循环数组的动态规划问题
  7. Java8新特性(二)——强大的Stream API
  8. C# WinForm 判断程序是否已经在运行,且只允许运行一个实例
  9. 每日一道算法题--leetcode 179--最大数--python
  10. Lesson 1- exchange 2010 installing