今天在做试验(ORACLE 9.2.0.1.0)的时候发现一个奇怪的问题,当我用alter system set large_pool_size=409600 scope=both 修改后,发现v$spparameter中的large_pool_size=409600,而v$parameter中large_pool_size=4194304,我认为这两个地方的值应该是一样的吧,不知道这个4194304是怎么得出来得。请大家帮我看看到底是什么原因啊!
ps:db_block_size=8192
ps:db_block_size=8192
----------------------------------------------------------------------------
Oracle9i Enterprise Edition Release 9.2.0.1.0 - Production
PL/SQL Release 9.2.0.1.0 - Production
CORE 9.2.0.1.0 Production
TNS for 32-bit Windows: Version 9.2.0.1.0 - Production
NLSRTL Version 9.2.0.1.0 - Productionidle>select sid, name, value from v$spparameter where name like '%pool_size%';SID NAME VALUE
---------- ---------- ----------
* shared_poo 50331648
l_size* large_pool 8388608
_size* java_pool_ 33554432
size* global_con
text_pool_
size* olap_page_
pool_size
idle>select name, value from v$parameter where name like '%large_pool_size%';NAME VALUE
---------- ----------
large_pool 8388608
_size
idle>alter system set large_pool_size=409600 scope=both
2 ;系统已更改。idle>select name, value from v$parameter where name like '%large_pool_size%';NAME VALUE
---------- ----------
large_pool 4194304
_size
idle>select sid, name, value from v$spparameter where name like '%pool_size%';SID NAME VALUE
---------- ---------- ----------
* shared_poo 50331648
l_size* large_pool 4194304
_size* java_pool_ 33554432
size* global_con
text_pool_
size* olap_page_
pool_size都是4194304(4MB)啊,没有出现楼主的409600(400K),large_pool_size存在最小值(600K)的,楼主修改的那个值太小了,数据库会根据granule的大小动态进行调整的,而SGA<=128的系统中,默认granule的大小就是4MB,那么动态往上调整到一个granule的大小,就是4194304(4MB)