Oracle12c 中RAC功能增强新特性之ASM&Grid

1.    自动存储管理(ASM)方面的增强

1.1.   Flex ASM

在典型的网格架构安装中,每个节点有自己的ASM实例运行并扮演该节点上数据库的存储容器的角色,对这种安装配置,存在单点失败的风险。例如,如果该节点上的ASM实例出现问题或失败,那么,运行在该节点上的数据库和实例都将会被影响。为了避免ASM实例的单点失败,Oracle12c 提供一个flex ASM特性。Flex ASM总体来说是个不同的概念和架构,其中,只需要几个ASM实例运行在簇中的一组服务器上,但一个节点上的ASM实例失败时,Oracle簇软件将会自动在其他不同节点上启动ASM来替代该失败的ASM实例以保证可用性。另外,这种安装配置也提供运行在节点上的ASM实例的负载平衡能力。Flex ASM的另一个好处是能被配置在单独的节点上。

当你把Flex Cluster选为簇的安装选项时,Flext ASM配置将自动被选择,因为Flex Cluster需要Flex ASM。你也可以选择常规簇来弃用Flext ASM。当你决定用Flext ASM时,你一定确认确定的网络是可用的。你可以在安装簇时,选择启用Flex ASM,也可以在标准簇环境中用ASMCA来启用Flex ASM。

下面的命令显示目前的ASM模式:

$ ./asmcmd showclustermode

$ ./srvctl config asm

或者连到ASM实例,然后查询INSTANCE_TYPE参数。如果输出值是ASMPROX,那么,说明Flex ASM被配置了。

1.2. 增加了ASM存储限制

ASM存储的ASM磁盘组和磁盘大小硬限制被极大的增加了。在12Cr1中,ASM支持的磁盘组从11gR2的63增加到511个,每个ASM磁盘也从20PB增加到现在的32PB。

1.3. 调整ASM再平衡操作

12c中新的“EXPLAIN WORK FOR”语句能测量一个ASM再平衡操作的工作量,并且将结果输入V$ASM_ESTIMATE动态视图中。用该动态视图,你可以调整“POWER LIMIT”子句来改善在平衡操作。例如,如果你想测量增加一个新ASM磁盘需要的工作量,在实际手工运行再平衡操作前,你就可以用下面语句:

SQL> EXPLAIN WORK FOR ALTERDISKGROUP DG_DATA ADD DISK data_005;

SQL> SELECT est_work FROMV$ASM_ESTIMATE;

SQL> EXPLAIN WORK SET STATEMENT_ID=‘ADD_DISK‘FOR ALTER DISKGROUP DG_DATA AD DISK data_005;

SQL> SELECT est_work FROMV$ASM_ESTIMATE WHERE STATEMENT_ID = ‘ADD_DISK’;

您能基于该动态视图的输出调整POWER limit以改善再平衡操作的性能。

1.4. ASM Disk Scrubbing

新的对普通或高冗余级别的ASM磁盘组的ASM Disk擦洗操作,可以验证该ASM磁盘组中所有ASM磁盘的逻辑数据崩溃,并且,自动修复逻辑崩溃。如果探测到,就使用ASM镜像磁盘。磁盘擦洗能在盘组,确定的磁盘或文件上执行,影响非常小。下面的例子说明磁盘擦洗场景:

SQL> ALTER DISKGROUP dg_data SCRUB POWERLOW:HIGH:AUTO:MAX;

SQL> ALTER DISKGROUP dg_data SCRUB FILE‘+DG_DATA/MYDB/DATAFILE/filename.xxxx.xxxx‘ REPAIR POWER AUTO;

1.5. Active Session History (ASH) for ASM

V$ACTIVE_SESSION_HISOTRY动态视图现在也提供ASM实例的活动会话取样。可是,诊断包的使用需要许可。

2.   网格(GridInfrastructure)架构的增强

2.1. Flex簇

在进行簇安装时,Oracle 12c 提供两种类型的簇配置:传统标准簇和Flex簇。传统标准簇中,簇中的所有节点被互相紧密的集成在一起,通过私网交互,并且直接存取存储。另一方面,Flex簇引进了两种类型的节点,它们按照Hub节点和叶子节点的架构被安排。Hub类型的节点和传统标准簇类似,例如,它们通过私网互连,可以直接读写存储。叶子节点和Hub节点是不同的。它们不必直接存取底层存储,而是通过Hub节点去存取存储和数据。

你最大可以配置64个Hub节点,可以配置很多叶子节点。在一个Flex簇中,你可以值配置Hub节点而不配置叶子节点,但是不可以只配置叶子节点而不配置Hub节点。你可以为一个Hub节点配置多个叶子节点。在Oracle Flex簇中,只有Hub节点可以直接存取OCR/Voting盘。当你计划大规模的簇环境时,这将是一个可以使用的一大特性。这种配置大大减小了互连冲突,提供了传统标准簇的可伸缩空间。

有两种方法部署Flex簇:

1)  当配置一个全新簇时;

2)  从一个标准簇升级到Flex簇;

如果你正配置一个全新簇,你需要在第三步选择簇配置的类型,选择配置一个Flex簇选项,然后,你必须在第六步将节点分为Hub节点和叶子节点,针对每个节点,选择角色:Hub或叶子,另外,也可以选择虚拟主机名。

当从一个标准簇模式转换为一个Flex簇模式时需要如下步骤:

1)  用下面的命令获取簇的当前状态

$ ./crsctl get cluster mode status

2)  以root用户运行如下命令

$ ./crsctl set cluster mode flex

$ ./crsctl stop crs

$ ./crsctl start crs –wait

3)  按照你的设计改变每个节点的角色

$ ./crsctl get node role config

$ ./crsctl set node role hub|leaf

$ ./crsctl stop crs

$ ./crsctl start crs –wait

注意:

1)  你不能将Flex簇转换为标准簇模式。

2)  改变簇节点模式要求停/启簇。

3)  确信GNS被配置为固定VIP。

2.2. 在ASM盘组中备份OCR

12c中, OCR现在能被备份在ASM盘组中。这简化了通过各节点对OCR备份文件的存取。恢复OCR时,你不必担心OCR的最后一次备份在那个节点上的问题,仅仅确定ASM中的最新备份,并且可以很容易的完成恢复。下面的例子说明了如何把ASM盘组设置为OCR备份位置:

$ ./ocrconfig -backuploc +DG_OCR

2.3. IPv6支持

Oracle 12c中,Oracel现在支持同一网络的IPv4 and IPv6网络协议配置。 你现在可以配置公网(Public/VIP)IPv4,,IPv6或组合协议配置。可是,在同一个簇中的所有节点确信要用同一套IP协议配置方法。

3.   RAC(数据库)的增强

3.1. What-If命令评估

使用srvctl命令的新 What-if命令评估选项,可以决定运行该命令的影响。Srvctl命令的这个新选项,将允许你在不实际执行和对当前系统做出改变的情况下,来模拟该命令。当你想对当前系统做出改变,但并不确信结果是什么时,这个选项会特别有用。所以,该选项将提供做出改变的结果。-eval选项也可以和crsctl命令一起使用。例如,如果你想知道停掉某个特定的数据库会将会发生什么,你能用下面的例子:

$ ./srvctl stop database –d MYDB –eval

$ ./crsctl eval modify resource <resource_name>-attr “value”

3.2. Srvctl各方面的改善

Srvctl命令有些新添加的选项。下列说明新添加的启停簇上数据库/实例资源选项。

srvctlstart database|instance –startoption NOMOUNT|MOUNT|OPEN

srvctlstop database|instance –stopoption NOMOUNT|MOUNT|OPEN

原文地址:https://www.cnblogs.com/lhdz_bj/p/8882412.html

时间: 2024-10-25 19:54:15

Oracle12c 中RAC功能增强新特性之ASM&amp;Grid的相关文章

Oracle12c中性能优化&amp;amp;功能增强新特性之全局索引DROP和TRUNCATE 分区的异步维护

Oracle 12c中,通过延迟相关索引的维护可以优化某些DROP和TRUNCATE分区命令的性能,同时,保持全局索引为有效. 1.   设置 下面的例子演示带全局索引的表创建和加载数据的过程. -- 建表 CREATE TABLE t1 (id            NUMBER, comment   VARCHAR2(50), crt_time  DATE) PARTITION BY RANGE (crt_time) (PARTITION part_14 VALUES LESS THAN (

Oracle12c功能增强新特性之维护&amp;amp;升级&amp;amp;恢复&amp;amp;数据泵等

1.   内容提要 1)   表分区维护的增强. 2)   数据库升级改善. 3)   跨网络还原/恢复数据文件. 4)   数据泵的增强. 5)   实时ADDM. 6)   并发统计信息收集. 2.   表分区维护的增强 在其它文章中,我说明了怎样在线或离线把一个表分区或子分区移到一个不同的表空间. 这部分,你将学习和表分区相关的其它方面的增强. 2.1.  添加多个新分区. 12c R1之前,在一个已分区表上仅仅能一次添加一个分区.为了添加多个分区.你必须每添加一个新分区单独运行一个ALT

Oracle12c 新特性之三——ASM&amp;Grid

1.    自动存储管理(ASM)方面的增强 1.1.   Flex ASM 在典型的网格架构安装中,每个节点有自己的ASM实例运行并扮演该节点上数据库的存储容器的角色,对这种安装配置,存在单点失败的风险.例如,如果该节点上的ASM实例出现问题或失败,那么,运行在该节点上的数据库和实例都将会被影响.为了避免ASM实例的单点失败,Oracle12c 提供一个flex ASM特性.Flex ASM总体来说是个不同的概念和架构,其中,只需要几个ASM实例运行在簇中的一组服务器上,但一个节点上的ASM实

Visual Studio 2015 RC中的ASP.NET新特性和问题修正

(此文章同时发表在本人微信公众号"dotNET每日精华文章") 微软在Build大会上发布了Visual Studio 2015 RC,这也预示着Visual Studio 2015及其背后框架的功能特性已经确定,我们也可以来看看和之前的CTP到底有什么区别. 在Build大会宣布发布Visual Studio 2015 RC之后,微软的Web开发和工具团队在其博客上发表了一篇介绍Visual Studio 2015 RC新特性和问题修正的文章.同VS2015 RC伴随发布的是.NET

浅析Android 5.0中多媒体相关的新特性

本文来源于本人在所属公司内部分享的一次培训内容,由于100%是AOSP开源内容,所以应该可以分享出来给大家. Android L是在今年2014年6月的Google I/O开发者大会上正式推出的,其中包含了诸多改进,包括新的Material Design交互设计,卡片式风格的通知栏,对64位和ART的支持等等,本文则重点关注一些多媒体相关的新特性. 由于Android L发布的时间仅有半年,无论国内还是国外的相关资料比较匮乏,很多内容本人只能是在Android developer网站中对L版本的

Java 9 中的 9 个新特性

Java 8 发布三年多之后,即将快到2017年7月下一个版本发布的日期了. 你可能已经听说过 Java 9 的模块系统,但是这个新版本还有许多其它的更新. 这里有九个令人兴奋的新功能将与 Java 9 一起发布. 1. Java 平台级模块系统 Java 9 的定义功能是一套全新的模块系统.当代码库越来越大,创建复杂,盘根错节的"意大利面条式代码"的几率呈指数级的增长.这时候就得面对两个基础的问题: 很难真正地对代码进行封装, 而系统并没有对不同部分(也就是 JAR 文件)之间的依赖

VMare中安装“功能增强工具”,实现CentOS5.5与win7host共享文件夹的创建

读者如要转载,请标明出处和作者名,谢谢. 地址01:http://space.itpub.net/25851087 地址02:http://www.cnblogs.com/zjrodger/ 地址03:http://blog.csdn.net/zjrodger 作者名:zjrodger [OS和其他辅助软件参数] Guest OS: CentOS 5.5 Host OS: Win 7 32 bit OS安装介质:CentOS-5.5-i386-bin-DVD.iso 虚拟机:VMware wor

PHP5各个版本的新功能和新特性总结

因为 PHP 那“集百家之长”的蛋疼语法,加上社区氛围不好,很多人对新版本,新特征并无兴趣.本文将会介绍自 PHP5.2 起,直至 PHP5.6 中增加的新特征 本文目录:PHP5.2 以前:autoload, PDO 和 MySQLi, 类型约束PHP5.2:JSON 支持PHP5.3:弃用的功能,匿名函数,新增魔术方法,命名空间,后期静态绑定,Heredoc 和 Nowdoc, const, 三元运算符,PharPHP5.4:Short Open Tag, 数组简写形式,Traits, 内置

C++11 中的几个新特性

C++11的标准已经确定,除了增加了不少库函数外,在语法方便也得到了许多增强.其中如下几个语法就是我比较喜欢的: 自动类型推导auto 现在c++终于在编译器级别支持类似C#的var关键字了,在c++里的关键字是auto,基本用法如下: auto i = 0;        //int auto c = 'c';    //char auto s = "hello world";    //const char* auto关键字的一个很直观的好处是我们可以简化stl容器遍历里的那个it