(1)磁盘组兼容性概要
为使用一些ASM的新功能,你可以使用两个磁盘组兼容性方面的属性,COMPATIBLE.RDBMS和COMPATIBLE.ASM。这些属性指定据库和ASM 各自使用磁盘组所需的最小的软件版本。缺省情况下,这两个属性都被设成10.1,如果你想利用新特征必须推进这些属性。南京OCP培训
兼容性属性设置成早先发行的版本可以使客户端访问高版本的磁盘组,例如,Oracle 10g的客户端能够访问Oracle 11g的ASM磁盘组。
ASM 和Oracle 数据库磁盘组兼容性属性设置决定了系统可使用的最小的ASM和Oracle数据库软件版本。例如, 如果ASM 兼容性是11.1, 并且Oracle 数据库兼容性是10.1, 那么ASM 软件版本必须至少是11.1, 并且Oracle 数据库客户软件版本必须是至少10.1 。二个属性设置是compatible.asm 和compatible.rdbms。南京OCP培训
ASM 的软件版本决定最近创建的磁盘组的缺省兼容性,当你以CREATE DISKGROUP SQL语句创造磁盘组时,可以忽略磁盘组兼容性设置。另外,可以使用ALTER DISKGROUP SQL语句为现有的磁盘组改变兼容性设置。磁盘组兼容性设置只能逐渐升高,你无法恢复回一个更低的兼容性设置。
(2)COMPATIBLE.ASM和COMPATIBLE.RDBMS
兼容性属性设置是通过这两个参数完成的。COMPATIBLE.ASM属性决定任一个ASM 事例使用一个磁盘组的最小的软件版本。这个设置并且决定数据磁盘上ASM原数据的数据结构的格式。文件内容的格式由数据库实例决定的。对于Oracle 11g版本中的ASM, 10.1 是其缺省的设置值。为更好的完成磁盘组兼容性设置,应设置之前COMPATIBLE.RDBMS前先设置COMPATIBLE.ASM属性。
数据库使用的所有磁盘组的COMPATIBLE.RDBMS属性值必须小于或等于数据库的COMPATIBLE初始参数设置值,对于Oracle 11g版本中的ASM, 10.1也是COMPATIBLE.RDBMS属性的缺省值。举例来说, 如果数据库兼容初始化参数被设置成11.1.0, 那么COMPATIBLE.RDBMS 只能被设置成10.1 和11.1 之间的任一值。南京OCP培训
(3)设置磁盘组兼容性的方法
可能通过CREATE DISKGROUP or ALTER DISKGROUP两个语句设置磁盘组的兼容属性。
使用 CREATE DISKGROUP建立磁盘组时指定兼容属性
以下例子建立一个正常冗余盘磁盘组asmdskgrp1,ASM 兼容属性设置成10.2 ,与数据库兼容性属性取默认值(假定COMPATIBLE.RDBMS 缺省小于或等于10.2):
CREATE DISKGROUP asmdskgrp1 DISK '/dev/raw/*'
SET ATTRIBUTE 'compatible.asm' = '10.2';
以下例子建立一个正常冗余盘磁盘组asmdskgrp2,ASM 兼容属性设置成11.1 ,与数据库兼容属性取默认值(假定COMPATIBLE.RDBMS 缺省小于或等于11.1):
CREATE DISKGROUP asmdskgrp2 DISK '/dev/raw/*'
SET ATTRIBUTE 'compatible.asm' = '11.2'; 南京Oracle培训
以下例子建立一个正常冗余盘磁盘组asmdskgrp3,ASM 兼容属性及与数据库兼容属性都取11.1:
CREATE DISKGROUP asmdskgrp3 DISK '/dev/raw/*'
SET ATTRIBUTE 'compatible.rdbms' = '11.1', 'compatible.asm' = '11.1';
使用ALTER DISKGROUP SQL语句为现有的磁盘组改变兼容属性
在磁盘组被创造了之后, 您能使用ALTER DISKGROUP SQL语句改变兼容属性。使用ALTER DISKGROUP SQL语句在提交变动之前,需确保Oracle能提升指定盘组的兼容性。为使进行ALTER DISKGROUP提升盘组兼容性而不减少数据库和文件系统功能,所有影响的数据库和文件系统都应当是在线的。南京Oracle认证培训
举例:
ALTER DISKGROUP asmdskgrp4 SET ATTRIBUTE 'compatible.rdbms' = '11.1';
ALTER DISKGROUP asmdskgrp5 SET ATTRIBUTE 'compatible.asm' = '11.1';