Oracle12c 的 RAC 功能增强新特性之 ASM&Grid
自动存储管理(ASM)方面的增强
1.1. Flex ASM
在网格架构安装中,传统配置可能面临单点故障风险。通过 Flex ASM 特性,Oracle12c 提供了分布式架构,仅需少数几个 ASM 实例运行在一组服务器上,一旦节点上的 ASM 实例出现故障,集群软件会自动在其他节点启动 ASM 实例以保持可用性,同时实现节点上 ASM 实例的负载平衡。此外,Flex ASM 可在单独节点上配置。选择 Flex Cluster 作为安装选项时,Flex ASM 会自动启用;若选择常规簇,则可弃用 Flex ASM。在安装或使用 ASMCA 时,需确认网络可用性。
要检查当前 ASM 模式,可执行以下命令:
$ ./asmcmd showclustermode
$ ./srvctl config asm
或连接至 ASM 实例,查询 INSTANCE_TYPE 参数,若输出为 ASMPROX,则表示已配置 Flex ASM。
1.2. 增加了 ASM 存储限制
ASM 存储的磁盘组数量和磁盘大小限制大幅增加,从 11gR2 的 63 增加至 511 个磁盘组,每个磁盘大小从 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 Disk擦洗功能,支持普通或高冗余级别的 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
ASM 实例的活动会话取样现在通过 V$ACTIVE_SESSION_HISOTRY 动态视图提供,但诊断包的使用需要许可。
2. 网格(GridInfrastructure)架构的增强
2.1. Flex 簇
Oracle 12c 提供了传统标准簇和 Flex 簇两种配置。标准簇中,节点紧密集成,直接存取存储。Flex 簇引入 Hub 节点和叶子节点架构,Hub 节点通过私网互连,直接存取存储,而叶子节点通过 Hub 节点存取存储和数据。最大可配置 64 个 Hub 节点和大量叶子节点,允许配置 Hub 节点而不配置叶子节点,但不能仅配置叶子节点。Hub 节点可以直接存取 OCR/Voting 盘。这种配置提供传统标准簇的可伸缩性,减少互连冲突。
部署 Flex 簇有两种方法:在全新簇配置时或从标准簇升级。配置全新簇时,需在第三步选择配置类型,选择 Flex 簇选项,然后分配 Hub 节点和叶子节点角色。从标准簇升级时,需获取当前状态,以 root 用户运行命令,改变节点角色,重新启动集群。
2.2. 在 ASM 盘组中备份 OCR
12c 支持在 ASM 盘组中备份 OCR,简化了节点间的存取。恢复 OCR 时,无需担心备份位置,仅需确定 ASM 中的最新备份,便于完成恢复。例如:
$ ./ocrconfig -backuploc +DG_OCR
2.3. IPv6 支持
Oracle 12c 现支持同一网络的 IPv4 和 IPv6 配置。可配置公网(Public/VIP)IPv4、IPv6 或组合协议,但集群中所有节点必须使用相同 IP 协议配置方法。
3. RAC(数据库)的增强
3.1. What-If 命令评估
使用 srvctl 命令的 What-if 选项评估运行命令的影响,允许在不执行改变的情况下模拟命令,尤其在不确定结果时非常有用。与 crsctl 命令结合使用,如想知道停掉特定数据库的影响,可执行如下:
$ ./srvctl stop database –d MYDB –eval
$ ./crsctl eval modify resource -attr “value”
3.2. Srvctl 改善
srvctl 命令新增了启停数据库/实例资源选项,包括:
srvctlstart database|instance –startoption NOMOUNT|MOUNT|OPEN
srvctlstop database|instance –stopoption NOMOUNT|MOUNT|OPEN
本文如未解决您的问题请添加抖音号:51dongshi(抖音搜索懂视),直接咨询即可。