oracle 12c 新特性

前言

oralce 11g发布于2007年7月11日,2013年6月26日发布了12c,才发现自己用oracle最高版本还停留在11g Release 11.2.0.4.0。而今年oracle已经发布了19c,所以为了赶上时代的部分,决定先从12从开始学习。先上12从特性
在oracle 12c数据库中,新特性为数据库管理部分和CDB和PDB部分

一、 数据库管理部分

1、PL/SQL性能增强

类似在匿名块中定义过程,现在可以通过with语句在sql中定义一个函数,采用这种方式可以提高sql调用性能。

2、 改善defaults

包括序列作为默认值,自增列,当明确插入null值时指定默认值;metadata-only default 值指的是增加一个新列时
指定的默认值,12c的default值要求not null 列。

3、放宽多种数据类型长度限制

增加了varchar2,nvarchar2和raw类型的长度达到32kb。要求兼容性设置为12.0.0.0以上,且设置了初始化参数
MAX_SQL_STRING_SIZE位extended,不支持cluster表和索引组织表,并不是真正改变了varchar的限制,而是通过out of line 的clob实现。

4、TOP n的语句实现

在select 语句中使用 fetch next N rows 或者 offset 可以指定前N条或者百分之多少的记录。

  SELECT e.* FROM emp e FETCH NEXT 10 ROWS ONLY;

相当于

  SELECT e.* FROM emp e WHERErownum<=10;

5、行模式匹配

类似分析函数的功能,可以在行间进行匹配判断并进行计算,在sql中新的模式匹配语句是“match_recognize”

6、分区改进

oracle 12c中对分区功能做了较多的调整,oracle采用学习功能的执行计划,使用运行读取过程使得查询结果更准确。

7、adaptive 执行计划

拥有学习功能的执行计划,oracle会把实际运行过程中读取到的返回结果作为进一步执行计划判断的输入,因此统计信息
不准确或查询结果与计算结果不准时,可以得到更好的执行计划。

8、统计信息增加第11层

使得动态统计信息收集的功能更强,增加了混合统计信息用以支持包含大量不同的值,且个别数据
倾斜的情况;添加了数据加载过程收集统计信息的能力;对于临时表增加了会话私有统计信息。

9、临时undo

通过临时段的undo独立出来,放到temp表空间,优点包括:减少了undo产生的数量,减少redo产生的数量;在active data guard上
允许对临时表进行dml操作。
要使用这一新功能 ,需要做以下设置
1、兼容性参数必须设置为12.0.0 或更高
2、启用temp_undo_enabled 初始化参数
3、由于临时表 undo 记录 现在是存储在一个临时表空间,需要有足够的空间来创建这个临时表空间。
4、对于会话级,可以使用:alter system set temp_undo_enable=true;
以下所列字典视图是可以用来查看或查询临时undo数据相关统计信息的
v t e m p u n d o s t a t d b a h i s u n d o s t a t v tempundostat dba_his_undostat v tempundostatdbahisundostatvundostat

要禁用此功能,你只需要做以下设置
alter system |session set set temp_undo_enable=false;

10 、数据优化

新增了 ILM(数据声明周期管理)功能,添加了数据库热图(database heat map) 在视图中可以直接
看到数据的利用率,找到那些数据是最热的数据。可以自动实现数据的在线压缩和数据分级,其中数据分级可以
在线将定义时间内的数据文件转移到归档存储,也可以将数据表定时转移至归档文件,也可以实现在线的数据压缩。
常用字典

SELECT  t.* FROM   all|user|Dba_Heat_Map_Seg_Histogram t;
SELECT  t.* FROM   all|user|DBA_HEATMAP_TOP_OBJECTS t;
SELECT  t.* FROM  all|user|DBA_HEATMAP_TOP_TABLESPACES  t;
SELECT  t.* FROM  all|user|DBA_HEAT_MAP_SEGMENT t;

11、应用连续性

oracle database 12c 之前 rac和failover 只做到了session 和select级别,对于dml操作则无能为力,对于session,进行
到一半的dml会自动回滚;而对于select 虽然failover 可以中断查询,但是对于dml的问题更甚之,必须要手工回滚。而oracle
12c终于支持了事物的failover。

12 、oracle pluggable database

oracle pdb 体系结构由一个容器数据库cdb和多个组装式数据库pdb构成,pdb包含独立的系统表空间和sysaux表空间。
但是所有pdb共享cdb的控制文件、日志文件、undo表空间

二、CDB 和PDB

在oracle 12c引入多租户环境中,允许一个容器数据库(container dabase ,cdb)承载多个可插拔数据库
(pluggable database ,pdb),在12c之前 实例是数据库是一对一或者多对一关系,即一个实例
只能与一个数据库相关联,数据库可以被多个实例所加载。而实例与数据库不可能是一对多的关系
,当进入12c后,实例与数据库可以是一对多的关系。
一个cdb 包含了下面一些组件
1、 root 组件:root 又叫cdb r o o t , 存 储 着 o r a c l e 提 供 的 元 数 据 和 c o m m o n u s e r , 元 数 据 的 一 个 例 子 是 o r a c l e 提 供 p l / s q l 包 的 源 代 码 。 c o m m o n u s e r 是 指 在 每 个 容 器 中 都 存 在 的 用 户 。 2 、 s e e d 组 件 : s e e d 又 叫 p d b root ,存储着oracle提供的元数据和common user ,元数据的一个例子是oracle 提供 pl/sql包的源代码。common user 是指在每个容器中都存在的用户 。 2、seed 组件:seed又叫pdb rootoraclecommonuseroraclepl/sqlcommonuser2seedseedpdbseed,是创建pdb数据库的模板,不能在seed中添加或修改一个对象。一个cdb只能有一个seed.
3、pdb组件:cdb中可以有一个或多个pdb,pdb向后兼容,可以像以前在数据库中那样操作pdb,这里指大多数常规操作。
这些组件中的每一个都可以被称为一个容器,因此,root根是一个容器,seed(种子)是一个容器,每个pdb是一个容器。每个容器在cdb中都有个独一无二的id和名称。
使用oracle 12c自带的sql*plus 登录,就可以使用startup 命令将pdb打开,或者使用alter pluggable database open语句打开
pdb,在一个pdb中只能看到自己的用户,即使是在pdb登录模式下,cdb也是可以使用的,在cdb中可以看到所有container用户

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
Oracle 12c CHM是Oracle 12c数据库的中文帮助文件。CHM代表"Compiled Html Help",是一种微软开发的帮助文档格式,可在Windows操作系统中使用。CHM文件是一种压缩文档格式,通常包含了多个HTML页面,用于提供软件使用或问题解决的说明和指导。 Oracle 12cOracle公司开发的一款关系型数据库管理系统。它是Oracle Database系列中的最新版本,具有许多新功能和改进。与先前版本相比,Oracle 12c具有更高的性能、更强大的安全性、更大的可扩展性和可靠性,并提供了云计算和数据仓库功能。 Oracle 12c CHM帮助文件提供了详尽的文档和信息,帮助用户了解和使用Oracle 12c数据库。它包含了从安装和配置Oracle 12c开始的指南,到数据库管理和监控的各项功能。CHM文件的中文版本使得使用中文操作系统的用户能够更方便地理解和使用Oracle 12c数据库。 通过Oracle 12c CHM中文帮助文件,用户可以学习和了解Oracle 12c的各种功能和特性。它提供了从基本的SQL语法和查询操作,到高级的事务处理和并发控制的知识。此外,文件还解释了如何使用Oracle 12c的新功能,例如多租户架构、数据泵、容器数据库和自动存储管理等。 总之,Oracle 12c CHM中文帮助文件对于使用Oracle 12c数据库的用户来说是一个非常有用的资源。它提供了详细的文档、指南和示例,帮助用户快速上手并充分了解数据库的功能和应用。无论是初学者还是有经验的数据库管理员,都可以通过CHM文件获得必要的支持和指导,在使用Oracle 12c时更加高效和便捷。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

菜菜的中年程序猿

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值