【IT168 技术文章】
本文主要概述了Oracle数据库11g第1版中对自动存储管理(ASM)的增强,其中包括:
Oracle数据库存储管理员指南
新的磁盘组兼容属性
镜像快速重新同步
滚动升级
SYSMAN特权和OSASM操作系统组
可扩展性和性能增强
新的ASMCMD命令和选项
Preferred Read Failure(首选读失效)组
快速重新平衡
混合磁盘组维护增强
Oracle数据库存储管理员指南
在Oracle官方网站上首次放出了存储管理员指南,参见http://download.oracle.com/docs/cd/B28359_01/server.111/b31107/toc.htm。
新的磁盘组兼容属性
Oracle 11g包括了两个新的兼容属性,让数据库软件可以使用特殊的磁盘组:
(1) COMPATIBLE.ASM:可以访问磁盘组的ASM软件最小版本。在11g中,默认设置是10.1
(2) COMPATIBLE.RDBMS:对于任何使用磁盘组的数据库实例,COMPATIBLE数据库初始化参数最小值。在11g中,默认设置是10.1。
兼容版本的磁盘组只能增加,不能减少,如果你在增加版本时犯错,只能重新创建一个新的磁盘组。
磁盘组的兼容属性可以在创建磁盘组期间给CREATE DISKGROUP目录添加ATTRIBUTE子句进行设置。
ATTRIBUTE 'compatible.asm' = '11.1';
CREATE DISKGROUP data DISK '/dev/raw/*'
ATTRIBUTE 'compatible.rdbms' = '11.1', 'compatible.asm' = '11.1';
可以在ALTER DISKGROUP命令后面加上SET ATTRIBUTE子句改变现有磁盘组的兼容属性。
ALTER DISKGROUP data SET ATTRIBUTE 'compatible.rdbms' = '11.1';
可以从V$ASM_DISKGROUP 和 V$ASM_ATTRIBUTE视图查看当前有效的兼容性设置。
COLUMN compatibility FORMAT A20
COLUMN database_compatibility FORMAT A20
SELECT group_number, name, compatibility, database_compatibility FROM v$asm_diskgroup;
GROUP_NUMBER NAME COMPATIBILITY DATABASE_COMPATIBILI
------------ ---------- -------------------- --------------------
1 DATA 11.1.0.0.0 11.1.0.0.0
1 row selected.
SQL>
COLUMN name FORMAT A20
COLUMN value FORMAT A20
SELECT group_number, name, value FROM v$asm_attribute ORDER BY group_number, name;
GROUP_NUMBER NAME VALUE
------------ -------------------- --------------------
1 au_size 1048576
1 compatible.asm 11.1.0.0.0
1 compatible.rdbms 11.1
1 disk_repair_time 3.6h
4 rows selected.
SQL>
镜像快速重新同步
在短暂的磁盘失效期间,ASM跟踪那些必须应用到离线磁盘的有变化的区间(extend),一旦磁盘可用了,只将那些改变的区间同步回磁盘,而不是全部磁盘内容,显著增加了重新同步进程的速度。
只有当磁盘组的兼容属性设置为11.1或更高时,镜像快速重新同步才可用。
ALTER DISKGROUP disk_group_1 SET ATTRIBUTE 'compatible.rdbms' = '11.1;
ASM会删除离线时间超过3.6小时的磁盘,可以通过修改DISK_REPAIR_TIME(单位可以是分钟,M或m,或小时,H或h)参数设置磁盘组默认时间限制。
ALTER DISKGROUP disk_group_1 SET ATTRIBUTE 'disk_repair_time' = '4.5h';
-- 以分钟为单位进行设置
ALTER DISKGROUP disk_group_1 SET ATTRIBUTE 'disk_repair_time' = '300m';
ALTER DISKGROUP命令的DROP AFTER子句用于废除DISK_REPAIR_TIME参数设置的默认时间。
ALTER DISKGROUP disk_group_1 OFFLINE DISK D1_0001;
--废除默认的DISK_REPAIR_TIME.
ALTER DISKGROUP disk_group_1 OFFLINE DISK D1_0001 DROP AFTER 30m;
如果磁盘在滚动升级期间离线,直到滚动升级完成,计时器才会启动。