几个重要的 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 ,如需转载请自行联系原作者

相关文章
创建asm disk 磁盘组出错! ORA-15018 And ORA-15107 (Doc ID 2678808.1)
ORA-15018: diskgroup cannot be created ORA-15107: missing or invalid ASM disk name
|
2月前
|
SQL
How To Resize An ASM Disk? (Doc ID 470209.1)
1) Please backup the database(s) contained inside the associated diskgroup. 2) Then shutdown the databases contained inside the associated diskgroup. 3) Dismount the associated diskgroup to verify no client database connections are accessing this specific diskgroup: SQL> alter diskgroup <diskgro
22 2
|
Oracle 关系型数据库 Unix
solaris asm disk
solaris oracle asm disk,solaris rac ,
1609 0
|
2月前
|
Oracle 关系型数据库
oracle asm 磁盘显示offline
oracle asm 磁盘显示offline
151 2
|
2月前
|
存储 Oracle 关系型数据库
【数据库数据恢复】Oracle数据库ASM磁盘组掉线的数据恢复案例
oracle数据库ASM磁盘组掉线,ASM实例不能挂载。数据库管理员尝试修复数据库,但是没有成功。
【数据库数据恢复】Oracle数据库ASM磁盘组掉线的数据恢复案例