云和恩墨 数据和云 

Andrew 曾在一次演讲中对Oracle 12c 是这样定义的:向敏捷、弹性和云三个方向上变革和演进。12.2的发布让人眼前一亮,很多新特性让我们看到Oracle的创新力。然而,对于广大的DBA来说,新特性不是最让人兴奋的,只有简单可行并且好处多多的新特性才是我们的最爱。本文将介绍12.2中一些重要的在线特性。在线功能的增强,在很大程度上减少了操作的风险和难度。

YH8:Oracle 12.2 New Online Feature_Java

 

新增索引高压缩可进一步压缩索引,为大量使用索引的环境(如OLTP)节省了空间,同时因为更多的索引可以被缓存,能大幅度减少系统IO。

 

压缩比例可以达到4.6x,系统系统提升13%

YH8:Oracle 12.2 New Online Feature_Java_02

对索引的维护:跟踪索引的使用不会产生额外开销,可以直接访问索引或者通过直方图进行访问。

 

YH8:Oracle 12.2 New Online Feature_Java_03

12.2以前千兆以上的数据只能通过导入导出的方式加密,在12.2引入了数据库文件的在线加密,还支持在线重新键入。能实现内部数据库结构的完全加密,包括SYSTEM,SYSAUX和UNDO表空间。

YH8:Oracle 12.2 New Online Feature_Java_04

YH8:Oracle 12.2 New Online Feature_Java_05

 

 

表的在线移动允许将表从一个表空间移到另一个表空间,在迁移的过程中,可以正常地对表进行操作。YH8:Oracle 12.2 New Online Feature_Java_06

数据表 Move 可以用于变更存储位置;重整存储空间,消除碎片;

SQL> create table yhem as select * fromdba_tables;

Table created.

SQL> alter table yhem move online;

Table altered.

YH8:Oracle 12.2 New Online Feature_Java_07

对于一些较大的表,或者数据增长较快的表,可能在创建后并使用一段时间,需要对其进行分区管理,在线分区功能在分区期间,仍然可以对表进行正常的DML操作,同时进行 Local 和 global索引维护。在线分区主要有以下三种实现:

  • 在线创建分区

YH8:Oracle 12.2 New Online Feature_Java_08

 

  • 在线分区迁移(MOVE PARTITION ONLINE )

YH8:Oracle 12.2 New Online Feature_Java_09

 

 

  • 迁移表定义 – 普通表转换为分区表

YH8:Oracle 12.2 New Online Feature_Java_10

 

示例如下:

透明的 MODIFY PARTITION ONLINE 操作;可以同时并发执行 DML 和 查询:

YH8:Oracle 12.2 New Online Feature_Java_11

 

迁移过程会自动创建分区:

YH8:Oracle 12.2 New Online Feature_Java_12

YH8:Oracle 12.2 New Online Feature_Java_13

YH8:Oracle 12.2 New Online Feature_Java_14

Online Datafile Move是Oracle 12c的一个增强,可以在线将数据文件从一个位置转移到另外一个位置。

YH8:Oracle 12.2 New Online Feature_Java_15

 

在12c之前文件只能存在Online和Offline两态,离线转移会不可避免造成业务的中断。

YH8:Oracle 12.2 New Online Feature_Java_16

更多关于12.2的新特性,关注数据和云(OraNews)公众号,回复关键字“掌上手册”或“新特性”,快速学习!