几个重要的 ASM Disk Groups 参数-阿里云开发者社区

开发者社区> 技术小美> 正文

几个重要的 ASM Disk Groups 参数

简介:
+关注继续查看

几个重要的Disk group 属性:

1、 ACCESS_CONTROL.ENABLED
该属性用来控制某个disk group 上ASM FILE Access Control。 该参数有2个值:true 和false。 默认为false。
当这个参数设置为true。 那么就必须访问权限的控制才能访问disk group上的ASM FILES。 
如果是false,那么任何用户都可以访问disk group上的文件。

修改命令:
ALTER DISKGROUP XXX SET ATTRIBUTE 'access_control.enabled' = 'true';

2、 COMPATIBLE.RDBMS
该属性用来指定disk group 最小能够兼容的数据库实例,
在修改这个参数之前,必须先确保所有的数据库实例的COMPATIBLE 参数大于等于该参数的值。

在Oracle 11g 数据库中,Oracle ASM disk group 的COMPATIBLE.RDBMS属性值默认是: 10.1

查看命令:
SQL> set lin 120
SQL> col name for a30
SQL> col value for a30
SQL> select name,value from v$asm_attribute where group_number=1 and name like 'compatible%';

修改命令:
SQL> ALTER DISKGROUP DATA SET ATTRIBUTE 'compatible.rdbms' = '11.2.0.0.0';
Diskgroup altered.

3、 ACCESS_CONTROL.UMASK
该属性用来指定访问ASM 文件的权限,只能使用alert 命令修改。
该参数值包含3个数字:{0|2|6} {0|2|6} {0|2|6}. 默认是066。
0: 表示具有读写的权限
2: 表示只读的权限
6: 表示不能读写

修改命令:
在设置磁盘组ACCESS_CONTROL.UMASK属性之前,必须先确保ACCESS_CONTROL.ENABLED 参数设置为TRUE。 
启用文件访问权限控制后,才能设置该参数。

SQL> alter diskgroup fra set attribute 'access_control.enabled' = 'true';
Diskgroup altered.
SQL> alter diskgroup fra set attribute 'access_control.umask' = 'XXX'; (若设置错误alert会报错)

4、COMPATIBLE.ASM
如果使用CREATE DISKGROUP 命令,或者ASMCMD的mkdg命令,或者OEM 来创建的disk group,那么参数的默认值就是10.1.
如果使用ASMCA来创建的,那么默认值就是11.2.
这个参数设置会影响磁盘上ASM metadata 的数据结构信息。
COMPATIBLE.ASM 属性决定能够使用对应disk group 的最小的Oracle ASM 实例 软件的版本。

查看参数:
SQL> select name,value from v$asm_attribute where group_number=1 and name like 'compatible%';

5、 AU_SIZE
AU_SIZE的值可以为如下单位: 1, 2, 4, 8, 16, 32, 和 64 MB。
该参数只能在创建disk group的时候指定,一旦指定了就不能在修改了。 
在oracle 10g里面,对于较大的数据库,也是建议增加AU size,因为增加AU_SIZE 能够增加对文件的大小的限制。 
在Oracle 11g,虽然默认值是1M,但是Oracle 建议将该值设置成4M。

查看 AU_SIZE 大小。
SQL> select name, allocation_unit_size/1024/1024||'M' from v$asm_diskgroup;

6、 DISK_REPAIR_TIME
在Oracle Database 11g以前,如果ASM磁盘的损坏,那就是一种灾难,即使你的ASM磁盘组是受Normal Redundancy或High Redundancy的保护。
因为在Oracle 10g中,损坏的ASM磁盘会马上offline,进而这个损坏的磁盘立刻会被Oracle drop掉。

为了避免这个问题,Oracle 在11g里引入了一个参数disk_repair_time,其默认值是3.6小时并且用户可以修改。
这个参数的单位可以是分钟(m or M)或者是小时(h or H)。 如果我们在指定属性时没有指定单位,那么默认单位是小时。 
该属性只能通过ALTER 命令来进行修改。
当损坏的磁盘offline后,Oracle并不会马上将其drop,而是会等待参数disk_repair_time所表示的时间。

在这段时间内,Oracle会记录下对损坏的磁盘上的extent所做的修改,一旦这个offline的损坏的磁盘在disk_repair_time所表示的时间内重新online,则Oracle会将之前所记录的对这个磁盘上extent所做的修改重新同步到这块盘上,从而高效地同步了数据(因为这里只同步了offline后修改的extent上的数据),避免了极为耗时的重构全部数据的rebalance过程。
这个过程就是11g中的:快速镜像同步(Fast Mirror Reync),必须将磁盘组的COMPATIBLE.ASM的属性值设置大于11.1。

当出现disk 出现故障被offline 后,我们可以查看V$ASM_DISK视图的REPAIR_TIMER。 该列显示的是disk 被drop 之前的剩余时间,单位是秒。 
一旦超过disk_repair_time指定的时间,disk 就会被drop 掉。那么我们就需要进行rebalance操作,而不能进行快速镜像同步。

查看drop 之前的剩余时间:

SQL> col name for a15
SQL>select disk_number,name,path,MODE_STATUS,REPAIR_TIMER from v$asm_disk where group_number=X;

7、 SECTOR_SIZE
SECTOR_SIZE 只能在创建diskgroup 时来指定。 该属性可以设置为512, 4096 或者4k。 具体的默认值由不同的平台决定。
只能在创建disk group 的时候进行设置,一般创建完成就不能修改。
传统的磁盘每个扇区512字节,随着磁盘容量的不断增大,继续使用512byte,不再是那么的合理,
于是将每个扇区512字节改为每个扇区4096 个字节,也就是现在常说的“4K扇区”。

查看SECTOR_SIZE:
SQL> SELECT name, value FROM V$ASM_ATTRIBUTE WHERE name = 'sector_size' AND group_number = 1;

如何修改:
不是所有的磁盘都支持SECTOR_SIZE值,如果要设置该属性,必须先确保物理磁盘的兼容性。
如果要修改sector size值,那么就必须确保disk group的COMPATIBLE.ASM 和 COMPATIBLE.RDBMS 属性值大于等于11.2。

注意:
Oracle Automatic Storage Management Cluster File System (Oracle ACFS) 不支持 4 KB sector drives.

 

文章可以转载,必须以链接形式标明出处。
本文转自 张冲andy 博客园博客,原文链接:   http://www.cnblogs.com/andy6/p/6480953.html,如需转载请自行联系原作者

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
阿里云服务器怎么设置密码?怎么停机?怎么重启服务器?
如果在创建实例时没有设置密码,或者密码丢失,您可以在控制台上重新设置实例的登录密码。本文仅描述如何在 ECS 管理控制台上修改实例登录密码。
7629 0
【RAC】asm_diskgroups 参数
初始化参数asm_diskgroups指定了在ASM实例启动时,或执行alter diskgroup all mount语句时,被挂载的磁盘组的名字,即当ASM实例启动的时候,会挂载这个参数指定的所有磁盘组,或当执行alter diskgroup all mount/dismount语句时,也会挂载这个参数指定的所有磁盘组。
600 0
二十三:从库的SQL 线程(MTS协调线程)和sql_slave_skip_counter参数(笔记)
一、调用流程大概如下 handle_slave_sql ->是否开启了slave_preserve_commit_order和log_slave_updates参数,开启的话需要设置提交顺序管理器 if (opt_slave_preserve_commit_order && rli->op...
593 0
编译预处理 -- 带参数的宏定义--【sky原创】
原文:编译预处理 -- 带参数的宏定义--【sky原创】 如有转载请注明出处   编译预处理  --  带参数的宏定义 前面为输出文件,后面为输入文件 gcc -E -o test.i test.
609 0
【RAC】Oracle集群心跳及其参数misscount/disktimeout/reboottime
Oracle 集群心跳及其参数misscount/disktimeout/reboottime     
1142 0
当心Python函数可变默认参数(list,set,dict…)的陷阱
绝大多数情况下,Python是一个干净具有一致性的语言。然而,有些少数情况会让初学者感到困惑。其中有些情况是有意识的但会成为潜在的莫名其妙,而有些可以说是语言赘肉。下面我们看看使用可变默认参数(Mutable default arguments)时会出现什么莫名其妙的状况。
1109 0
阿里云ECS云服务器初始化设置教程方法
阿里云ECS云服务器初始化是指将云服务器系统恢复到最初状态的过程,阿里云的服务器初始化是通过更换系统盘来实现的,是免费的,阿里云百科网分享服务器初始化教程: 服务器初始化教程方法 本文的服务器初始化是指将ECS云服务器系统恢复到最初状态,服务器中的数据也会被清空,所以初始化之前一定要先备份好。
11341 0
+关注
6906
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
《2021云上架构与运维峰会演讲合集》
立即下载
《零基础CSS入门教程》
立即下载
《零基础HTML入门教程》
立即下载