您的位置:首页 > 数据库 > Oracle

oracle 12c:新特性-自动存储管理(ASM)中的增强

2016-07-08 14:25 423 查看
oracle 12c:新特性-自动存储管理(ASM)中的增强

Flex ASM

在一个典型的网格基础架构安装环境中,每个节点都运行自身的ASM实例,并将其作为运行于此节点上数据库的存储容器。但这种设置会存在相应的单点故障危险。例如,如果此节点上的ASM实例发生故障,则运行于此节点上的所有数据库和实例都会受到影响。为了避免ASM实例的单点故障,Oracle 12c提供了一个名为Flex ASM的功能。Flex ASM是一个不同的概念和架构,只有很少数量的ASM实例需要运行在集群中的一些服务器上。当某节点上的一个ASM实例发生故障,Oracle集群就会在另一个不同的节点上自动启动替代ASM实例以加强可用性。另外,这一设置还为运行在此节点上的实例提供了ASM实例负载均衡能力。Flex
ASM的另一个优势就是可以在单独节点上加以配置。

当选择Flex Cluster选项作为集群安装环境的第一部分时,鉴于Flex Cluster的要求,Flex ASM配置就会被自动选择。传统集群同样也适用于Flex ASM。当你决定使用Flex ASM时,你必须保证所需的网络是可用的。你可以选择Flex ASM存储选项作为集群安装环境的一部分,或是使用ASMCA在一个标准集群环境下启用Flex ASM。

以下命令显示了当前的ASM模式:

$ ./asmcmd showclustermode $ ./srvctl config asm

或是连接到ASM实例并查询INSTANCE_TYPE参数。如果输出值为ASMPROX,那么,就说明Flex ASM已经配置好了。

ASM存储限制放宽

ASM存储硬性限额在最大ASM磁盘群组和磁盘大小上已经大幅提升。在 12c R1中,ASM支持511个ASM磁盘群组,而在11g R2中只支持63个。同样,相比起在11g R2中20 PB的磁盘大小,现在已经将这一数字提高到32 PB。

对ASM均衡操作的优化

12c 中新的EXPLAIN WORK FOR 语句用于衡量一个给定ASM均衡操作所需的工作量,并在V$ASM_ESTIMATE动态视图中输入结果。使用此动态视图,你可以调整POWERLIMIT语句对重新平衡操作工作进行改善。例如,如果你想衡量添加一个新ASM磁盘所需的工作量,在实际执行手动均衡操作之前,你可以使用以下命令:

SQL> EXPLAIN WORK FOR ALTER DISKGROUP DG_DATA ADD DISK data_005; 

SQL> SELECT est_work FROM V$ASM_ESTIMATE; 

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

SQL> SELECT est_work FROM V$ASM_ESTIMATE WHERE STATEMENT_ID = 'ADD_DISK’;

你可以根据从动态视图中获取的输出来调整POWER的限制以改善均衡操作。

ASM 磁盘清理

在一个ASM磁盘群组中,新的ASM磁盘清理操作分为正常或高冗余两个级别,它可以检验ASM磁盘群组中所有磁盘的逻辑数据破坏,并且可以自动对逻辑破坏进行修复,如果检测到有逻辑数据破坏,就会使用ASM镜像磁盘。磁盘清理可以在磁盘群组,特定磁盘或是某个文件上执行,这样其影响可降到最小程度。以下演示了磁盘清理场景:

SQL> ALTER DISKGROUP dg_data SCRUB POWER LOW:HIGH:AUTO:MAX; 

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

ASM的活动会话历史(ASH)

V$ACTIVE_SESSION_HISOTRY 动态视图现在还可以提供ASM实例的活动会话抽样。然而,诊断包的使用是受到许可限制的来自CUUG
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: