暂无图片
暂无图片
2
暂无图片
暂无图片
暂无图片

ASM添加删除磁盘操作规范

原创 xiangjingtao 2020-11-25
3721
                       ASM添加删除磁盘操作规范
复制

为规范化ASM磁盘操作,现将ASM添加/删除磁盘中的重要步骤及参数列出,供现场运维人员参考。

  1. 确认磁盘新增情况
    –查看现有磁盘以及占用情况
    命令:lspv

–查看磁盘组属性
命令:ls -l /dev/rhdiskpower*
TIPS:
该步骤主要是确认新增磁盘信息以及确保操作的盘未被用作其他用途,防止误操作将其他用途的盘加载到ASM中 =。=

  1. 对新增磁盘进行属性和权限变更
    –修改属主(用户/用户组可能有不同)
    命令:chown grid:oinstall /dev/rhdiskpower10
    chown grid:asmasmin /dev/rhdiskpower10

–修改读写权限
命令:chmod 660 /dev/rhdiskpower10

–检查磁盘是否是共享盘
命令:lsattr -El hdiskpower10 | grep reserve
reserve_policy single_path Reserve Policy used to reserve device on open. True
single_path:表示非共享盘,需要进行修改

–将磁盘修改为共享盘
命令:chdev -l hdiskpower10 -a reserve_policy=no_reserve

–修改后的查询结果应为
reserve_policy no_reserve Reserve Policy used to reserve device on open. True
no_reserve:表示为共享盘
TIPS:
在进行属主变更操作时,可以参照现有ASM磁盘属主情况。

默认挂载的共享磁盘是不能被共享访问的,只能被其中一个节点执行,如果不修改共享磁盘的共享属性,那么在执行另一个节点的root.sh脚本的时候可能收到如下的错误:/dev/hdiskpower# device is busy。
修改共享属性时注意以下步骤:
1.根据使用的不同存储可能看到的共享磁盘属性是不同的,可能是reserve_policy或者是reserve_lock属性。
reserve_policy属性,执行chdev –l <hdisk#> -a reserve_policy=no_reserve命令设置。
reserve_lock属性,执行chdev –l <hdisk#> -a reserve_lock=no命令设置。
2.以上的命令需要在RAC的所有节点都完成,在执行共享磁盘属性修改的时候确保磁盘没有被使用。
3.在使用hdiskpower10作为共享磁盘的时候一定注意使用的文件是/dev/rhdiskpower10,而不是/dev/hdiskpower10,rhdiskpower10是字符设备,hdiskpower10是块设备。

  1. 磁盘组添加/删除磁盘规范
    使用sysasm连接
    sqlplus / as sysasm

–将需要添加的磁盘一次性加到磁盘组中(添加时使用path路径)
alter diskgroup DATA01 add disk ‘/dev/rhdiskpower10’,’/dev/rhdiskpower11’ rebalance power 8;

–删除磁盘(删除时使用name名)
alter diskgroup DATA01 drop disk ‘DATA01_0003’ rebalance power 8;

–检查平衡情况,通过TOTAL_MB,FREE_MB查看几个磁盘间的平衡情况
select * from v$asm_disk;

–平衡结束后,将rebalance参数调回默认值
alter diskgroup DATA01 rebalance power 1;
TIPS:
在ASM磁盘组中添加/删除磁盘时,磁盘组会自动将数据在新旧磁盘间重新分配,从而实现分散I/O目的,该过程就叫做再平衡(rebalance)。
再平衡的过程中,数据会在磁盘间移动,会影响部分数据库性能,所以一般在系统空闲的时候进行。rebalance power参数的大小控制着再平衡的速度,它的取值范围为0~11。
最小值0 代表不进行rebalance;
最大值11 代表最快的rebalance速度,同时也意味着严重影响性能;
值1 代表最慢的rebalance速度和最小的性能影响,其余值以此类推,可根据操作时间段和现场数据库压力情况灵活进行选择。
除了在初始化参数中定义该参数, 也可以在添加删除磁盘时指定。

  1. 磁盘组新增
    –创建磁盘组,并附带初始参数
    create diskgroup DATA01 external redundancy disk ‘/dev/hdiskpower1’,’/dev/hdiskpower2’ attribute ‘compatible.ASM’=‘11.2’,‘compatible.rdbms’=‘11.2’,‘au_size’=‘4M’;

–如果创建时未附加attribute参数,而需要进行灵活调整的
alter diskgroup DATA01 set attribute ‘compatible.asm’=‘11.2’;
alter diskgroup DATA01 set attribute ‘compatible.rdbms’=‘11.2’;
TIPS:
Oracle 11g中包括了两个新的COMPATIBLE兼容属性(ASM/RDBMS),让数据库软件可以使用特殊的磁盘组:
COMPATIBLE.ASM:可以访问磁盘组的ASM软件最小版本。在11g中,默认设置是10.1。
COMPATIBLE.RDBMS:对于任何使用磁盘组的数据库实例,COMPATIBLE数据库初始化参数最小值。默认设置是10.1。
兼容版本的磁盘组只能增加不能减少,如果在增加时版本填错,只能重新创建。

在11GR2的ASM版本中,创建DISKGROUP时可以指定AU_SIZE的大小(比如1M、4M、8M、16M等)。

  1. 在数据量小的情况下,该参数对数据库性能没影响。
  2. 如果数据量达到10TB或PB级别,AU_SIZE值为默认1M的情况,extent的值就会非常大,读到内存中的效率就非常低,将严重的影响到数据库读写和访问性能,建议在初期规划时就定好AU_SIZE值,后期修改的代价非常大。
    Oracle建议达到10TB或PB的数据库,建议把au_size值改为16M,_asm_stripesize(条带大小)值为1M。

Oracle同时建议单个磁盘组中的磁盘数以不超过10个为好。

「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
2人已赞赏
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论