Oracle ASM Rebalance特性浅解
ASM动态重新平衡特性
在ASM环境中,有一个重要的特性叫做动态重新平衡(Rebalancing),即当ASM需要增加磁盘空间时,可将新的磁盘设备添加到磁盘组,ASM磁盘组会按照一定比例将数据从一个或多个已有的磁盘移动到新的磁盘,从而维持所有磁盘之间整体的I/O平衡。
这种特性也提供了将整个数据库从一组较慢的磁盘迁移到一组较快磁盘的迁移方法,而且整个过程数据库能保持联机状态。当重新平衡操作完成后,我们可以剔除较慢的磁盘组,保留较快磁盘的磁盘组,从而完成联机状态下的数据迁移。
动态重新平衡触发条件
Rebalancing触发条件:当ASM需要改变磁盘的配置时,比如往ASM当前磁盘组中添加新的磁盘成员(alter diskgroup data add disk '/dev/raw/raw7';),删除故障组的磁盘(alter diskgroup data drop disk 'name';),添加新的磁盘组或者删除旧的磁盘组等等,只要当数据库联机并且用户正在使用该数据库时,都将触发ASM进行动态的重新平衡。
当然也可以通过更改ASM初始参数ASM_POWER_LIMIT的值或使用ALTER DISKGROUP REBALANCE POWER ,可控制磁盘重平衡的速度及对运行数据库I/O的影响。11.2.0.2版本以上,ASM_POWER_LIMIT 和POWER的取值范围是0-1024,数值越大并发越高,重平衡速度也越快,后台I/O消耗越大。
使用ASM_POWER_LiMIT 调整rebalance 并发,asm_power_limit 默认值为1,若设置0,则为禁止rebalancing。