ASM的SGA和RDMBS没有区别,也包括Buffer Cache 、shared pool 、Large poor 等部分。需要注意共享池share pool ,因为extent map 要放在这部分内存中,需要根据数量估计map大小,并做相应的调整。
Extent map 的大小可以根据所有文件大小的和来计算,使用下面的语句来计算所有文件的和。
(注释:在RDBMS实例中输入这些sql命令)
SQL> select sum (bytes)/(1024*1024*1024) from v$datafile;
SQL> select sum (bytes)/(1024*1024*1024) from v$logfile a, v$log b where a.group#=b.group#;
SQL> select sum(bytes)/(1024*1024*1024) from v$tempfile where status='ONLINE';
这3个SUM的和对应着数据库存放在ASM中的所有文件大小的和。对于external redundancey 的磁盘组,每100G需要1M的extent map ,根据这个比例计算需要的空间,在加上额外的2MB就可以了。但是在时间工作中一般不需要考虑ASM SGA 的配置。使用ORACLE 提供的默认缺省值即可。
图片: