ASM Fast Rebalance

 

This article talks about the 11g new feature - ASM Fast rebalance and how to implement in 11g ASM Instance

 

 

       In 11g, you can use the STARTUP RESTRICT command to control access to an ASM instance while you perform maintenance. This startup option is used to implement ASM Fast Rebalance feature. Rebalance operations that occur while a disk group is in RESTRICTED mode eliminate the lock and unlock extent map messaging between ASM instances in Oracle RAC environments.

       When an ASM instance is started with 'STARTUP RESTRICT' option and is active in this mode, all of the disk groups are mounted in RESTRICTED mode which prevents databases from connecting to the ASM instance. In addition, the restricted clause of the ALTER SYSTEM statement is disabled for the ASM instance.

Given below is an example to show ASM Fast Rebalance Feature.


Startup ASM instance in Restricted mode

SQL> startup restrict;
ASM instance started
Total System Global Area 92065792 bytes
Fixed Size 1297984 bytes
Variable Size 65601984 bytes
ASM Cache 25165824 bytes


Now in case you wish to mount the Disk group in normal mode , you get following errors

SQL> alter diskgroup dgext11gasm mount;
alter diskgroup dgext11gasm mount
*
ERROR at line 1:
ORA-15251: only restricted mount is allowed in the ASM instance


You need to use restricted clause along with mount option.

 

SQL> alter diskgroup dgext11gasm mount restricted;
Diskgroup altered.

SQL> alter diskgroup dgext11gasm rebalance;
Diskgroup altered.


If ASM diskgroup is mounted in restricted mode,Database Instance will not be able to access files residing in the ASM Diskgroup

SQL> startup
ORACLE instance started.

Total System Global Area 418484224 bytes
Fixed Size 1300200 bytes
Variable Size 268437784 bytes
Database Buffers 142606336 bytes
Redo Buffers 6139904 bytes
Database mounted.
ORA-01157: cannot identify/lock data file 5 - see DBWR trace file
ORA-01110: data file 5: '+DGEXT11GASM/o11g/datafile/test.256.627345731'


       Unlike normal Database Instance, alter system disable restricted session is disabled for ASM Instance.
       You need to shutdown and startup ASM Instance in Normal mode to access files reside in the ASM Diskgroup for Database Instance

 

ASM Instance
=============
SQL> alter system disable restricted session;
alter system disable restricted session
*
ERROR at line 1:
ORA-15000: command disallowed by current instance type

SQL>shutdown immediate
SQL>startup

 

 

 

 

 

From Oracle

-------------------------------------------------------------------------------------------------------

QQ: 492913789
Email: ahdba@qq.com
Blog: http://www.cndba.cn/dave

DBA1 群:62697716();   DBA2 群:62697977()   DBA3 群:62697850()  

DBA 超级群:63306533();  DBA4 群: 83829929  DBA5群: 142216823   

聊天 群:40132017   聊天2群:69087192

--加群需要在备注说明Oracle表空间和数据文件的关系,否则拒绝申请

<think>我们正在讨论Oracle ASM的重新平衡操作(rebalance)。根据引用内容,我们知道ASMOracle提供的自动存储管理功能,它简化了存储管理,特别是在RAC环境中。重新平衡是ASM的一个重要特性,它允许在磁盘组配置更改(如添加、删除或调整磁盘大小)后,自动重新分布数据以保持I/O负载均衡和冗余。 重新平衡操作指南: 1. **触发条件**:当磁盘组发生以下变化时,ASM会自动触发重新平衡操作: - 添加新磁盘 - 删除现有磁盘 - 调整磁盘大小 - 修改磁盘组的冗余级别(例如,从NORMAL改为HIGH) 2. **操作方式**: - **自动触发**:在磁盘组配置更改后,ASM会自动启动重新平衡操作。 - **手动触发**:也可以使用SQL命令手动启动重新平衡: ```sql ALTER DISKGROUP <磁盘组名称> REBALANCE; ``` 3. **监控重新平衡**: - 可以通过查询`V$ASM_OPERATION`视图来监控重新平衡的进度: ```sql SELECT * FROM V$ASM_OPERATION; ``` 该视图会显示当前正在进行的ASM操作,包括重新平衡的进度(百分比)和预计完成时间。 4. **调整重新平衡速度**: - 重新平衡操作可能会影响I/O性能,因此可以通过设置`POWER`参数来控制重新平衡的速度。`POWER`值的范围是0到1024,默认值为1(由初始化参数`ASM_POWER_LIMIT`决定)。 - 在重新平衡过程中,可以动态调整`POWER`值: ```sql ALTER DISKGROUP <磁盘组名称> REBALANCE POWER <值>; ``` 较高的`POWER`值会加快重新平衡速度,但会增加I/O负载;较低的`POWER`值则相反。如果设置为0,则停止重新平衡操作。 5. **注意事项**: - 重新平衡操作是资源密集型的,建议在系统负载较低时进行。 - 在重新平衡过程中,确保有足够的系统资源(CPU、内存、I/O带宽)以避免影响数据库性能。 - 如果重新平衡被中断(例如,由于实例重启),ASM会在实例重新启动后继续未完成的重新平衡操作。 6. **完成后的验证**: - 重新平衡完成后,可以通过以下命令检查磁盘组的平衡状态: ```sql SELECT GROUP_NUMBER, NAME, STATE, TYPE, TOTAL_MB, FREE_MB FROM V$ASM_DISKGROUP; ``` - 确保所有磁盘的状态为`NORMAL`,并且每个磁盘的可用空间分布均匀。 引用说明: - 引用[3]提到ASM可以自动管理磁盘组并提供数据冗余功能,重新平衡正是这一功能的关键部分。 - 引用[2]提供了ASM实例的基本管理命令,包括启动ASM实例(在重新平衡过程中,ASM实例必须运行)。 通过以上步骤,您可以有效地管理和监控Oracle ASM的重新平衡操作,确保存储配置更改后数据分布的优化和系统性能的稳定。 §§相关问题§§ 1. 如何调整Oracle ASM重新平衡操作的速度以减少对系统性能的影响? 2. 在重新平衡操作过程中,如果发生故障或中断,ASM会如何处理? 3. 如何监控和诊断Oracle ASM重新平衡操作的进度和性能影响?</think>### Oracle ASM 重新平衡操作指南 Oracle ASM(自动存储管理)的**重新平衡(Rebalance)** 操作是当磁盘组配置发生变更时(如添加/删除磁盘、调整磁盘大小),ASM自动重新分布数据以维持I/O负载均衡和冗余级别的关键过程。以下是详细操作指南: --- #### **一、重新平衡触发条件** 1. **磁盘组变更**: - 添加新磁盘:`ALTER DISKGROUP dg_data ADD DISK '/dev/sdx';` - 删除磁盘:`ALTER DISKGROUP dg_data DROP DISK DATA_0001;` - 调整磁盘大小:`ALTER DISKGROUP dg_data RESIZE ALL;` 2. **冗余级别变更**:如从 `NORMAL` 改为 `HIGH`。 3. **手动触发**:直接执行重平衡命令。 --- #### **二、操作步骤** 1. **启动重新平衡**: ```sql ALTER DISKGROUP dg_data REBALANCE POWER 5; -- POWER控制并发度(1-1024) ``` - **POWER参数**: - 默认值由 `ASM_POWER_LIMIT` 初始化参数决定(通常为1) - 值越高速度越快,但I/O负载越大(建议在业务低峰期调高) 2. **监控进度**: ```sql SELECT * FROM V$ASM_OPERATION; -- 查看进度百分比 ``` 输出示例: ``` GROUP_NUMBER | OPERATION | STATE | POWER | EST_MINUTES | SOFAR | EST_WORK --------------|-----------|----------|-------|-------------|-------|--------- 1 | REBALANCE | RUNNING | 5 | 30 | 150 | 500 ``` - **关键字段**: - `EST_MINUTES`:预计剩余时间 - `SOFAR/EST_WORK`:已完成/总工作量比例 3. **动态调整POWER**: ```sql ALTER DISKGROUP dg_data REBALANCE POWER 8; -- 运行时调整并发度 ``` 4. **中断与恢复**: ```sql ALTER DISKGROUP dg_data REBALANCE POWER 0; -- 暂停操作 ALTER DISKGROUP dg_data REBALANCE POWER 3; -- 恢复操作 ``` --- #### **三、注意事项** 1. **性能影响**: - 重平衡消耗大量I/O和CPU资源,建议在低负载时段执行。 - 监控系统工具:`iostat`、`top` 或 AWR 报告。 2. **冗余保护**: - 在 `EXTERNAL` 冗余模式下无数据保护,操作需谨慎。 - `NORMAL`/`HIGH` 冗余模式下,ASM自动维护数据镜像[^3]。 3. **故障处理**: - 若实例崩溃,重启ASM后自动恢复未完成的重平衡。 - 检查告警日志:`$ORACLE_BASE/diag/asm/+asm/trace/alert_+asm.log`[^4]。 --- #### **四、验证结果** 1. 检查磁盘组状态: ```sql SELECT GROUP_NUMBER, NAME, STATE, TYPE, TOTAL_MB, FREE_MB FROM V$ASM_DISKGROUP; ``` 2. 确认磁盘均衡性: ```sql SELECT DISK_NAME, PATH, TOTAL_MB, FREE_MB FROM V$ASM_DISK WHERE GROUP_NUMBER=1; ``` 输出中 `FREE_MB` 应接近均匀分布。 --- ### 关键原理 - **数据分布**:ASM按AU(Allocation Unit,默认1MB)将文件条带化分布到所有磁盘[^3]。 - **并行优化**:`POWER` 参数实质控制并行进程数,高并发加速但增资源争用[^2]。 - **智能中断**:支持暂停/恢复,避免影响关键业务期。 > **提示**:对关键生产环境,建议先通过 `ALTER DISKGROUP ... REBALANCE WAIT;` 同步等待完成,确保操作可控[^2]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值