• 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

  • 相关阅读:
    初认识AngularJS
    (imcomplete) UVa 10127 Ones
    UVa 10061 How many zero's and how many digits?
    UVa 11728 Alternate Task
    UVa 11490 Just Another Problem
    UVa 10673 Play with Floor and Ceil
    JSON对象和字符串的收发(JS客户端用typeof()进行判断非常重要)
    HTML.ActionLink 和 Url.Action 的区别
    EASYUI TREE得到当前节点数据的GETDATA方法
    jqueery easyui tree把已选中的节点数据拼成json或者数组(非常重要)
  • 原文地址:https://www.cnblogs.com/lhdz_bj/p/8882412.html
Copyright © 2020-2023  润新知