ITPub博客

首页 > 数据库 > Oracle > [整理]Oracle的数据池简介及用法

[整理]Oracle的数据池简介及用法

原创 Oracle 作者:halfgene 时间:2007-09-01 11:35:01 0 删除 编辑

Oracle的数据池可分为
default, keep, recycle

db_cache_size
db_keep_size
db_recycle_size

[@more@]

一、

default:标准的缓存池
keep: 对于常驻内存的表使用,alter table .. storage(buffer_pool keep)
recycle:对不需要放在内存中的表使用: storage(buffer_pool recycle)

从本质上将,default, keep,recycle都使用LRU算法,本质上没有区别,就是看你放什么东西进去。
default池不仅方用户数据,而且也包括数据字典的缓存。

从9i开始,可以动态调整这几个内存区的大小
alter system set db_keep_size=xxxM
(show parameter cache_size可以看出全部的尺寸)

如果原来所有的池分配已经满了,首先要将其他的池缩小,才能分配给其他区域使用

二、让存储过程常驻内存

一般Oracle使用LRU算法淘汰最少使用的对象,但是你可以在共享池锁定对象,即无论此对象使用频率多低,都不从共享池中撤出,使用
DBMS_SHARED_POOL.KEEP(name varchar2, flag char default 'P')
flag默认的P代表存储过程,name是存储过程的名字

如果没有dbms_shared_pool包,可以用dbmspool.sql脚本生成

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/594892/viewspace-967432/,如需转载,请注明出处,否则将追究法律责任。

下一篇: ORALCE的异常处理
请登录后发表评论 登录
全部评论
  • 博文量
    44
  • 访问量
    52803