Oracle一些琐事
上一篇 /
下一篇 2011-09-22 00:10:18
/ 个人分类:技术杂谈
好多关键而又琐碎的东西一会儿就会被我遗忘,趁此温故知新的时候权且记下来。
1.Redo Log Buffer are flushed
Every three seconds, or
Whenever someone commits, or
When it gets one third full or contains 1 MB of cached redo log data.
2.关于block buffer cache
block buffer又2个list,一个用于存储脏块,一个用于存储非脏块。8.0以前非脏块用的是LRU算法来对block的使用排序,但是8i之后,采用的touch count来计数。计数越多说明越被频繁使用,越不会被替换出去
x$bh存储的就是block buffer中的块的信息
比如,拿dual这个表来说明:
select file_id, block_id from dba_extents where segment_name='DUAL' and wner='SYS';
select tch from x$bh where file#=:dual_file_id and dbablk=:dual_block_id;
再次读取dual表
select * from dual;
在查看块的访问次数
select tch from x$bh where file#=:dual_file_id and dbablk=:dual_block_id;
后来,block buffer又分出了keep, recycle和default buffer pool这几个pool。
3.shared pool
可以使用dbms_shared_pool来装载或者说固定住频繁使用的一些对象
4.large pool
MTS – to allocate the UGA region in the SGA.
Parallel Execution of statements – to allow for the allocation of inter-process message buffers, used to coordinate the parallel query servers.
Backup – for RMAN disk I/O buffers.
收藏
举报
TAG: