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

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/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/594892/viewspace-967432/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值