lang110 发表于 2018-9-12 12:52:46

oracle中shared pool中的保留池

  如果共享池中碎片化变得十分严重,就会导致比较大的共享内存分配无法满足需求,oracle在共享池中设计了保留池.
  保留池的设计目的是为了在共享池碎片化很严重的时候,还能够有一部分保留空间,用于较大的内存分配。可以通过参数shared_pool_reserved_size来设置保留池的大小(由于oracle的内存自动管理机制,一般情况下不需要手动设置)。
  SQL> show parameter shared_pool_reserved_size;
  NAME                                 TYPE      VALUE
  ------------------------------------ ----------- ------------------------------
  shared_pool_reserved_size            big integer 6081740
  保留池的使用条件:
  1)必须是在共享池的freelist中找不到足够大的chunk
  2)分配的内存容量要大于shared_pool_reserved_min_alloc的设定值(从8i开始该参数变为隐含参数,即_shared_pool_reserved_min_alloc,默认值为4400B),只有大于该设定值的内存分配才被认为是大内存分配。

页: [1]
查看完整版本: oracle中shared pool中的保留池