ITPub博客

首页 > 数据库 > Oracle > oracle体系结构

oracle体系结构

原创 Oracle 作者:guse520 时间:2009-09-11 00:20:51 0 删除 编辑

oracle体系结构:
Oracle server大体分为两部分:instance和database
database包括:Data files,Control files,Redo Log files
instance包括:SGA(内存块):主要包括5个:Shared Pool(Library Cache,Data Dictionary Cache),DB Buffer Cache,JavaPool, Redo Log Buffer,Large Pool
后台进程:PMON,SMON,DBWR,LGWR,CKPT,Others
还包括其他的一些文件如:Parameter file,Password file,Archived Log files
oracle 内存结构包括两个内存区:SGA(System Global Area)和PGA(Program Global Area)实例启动时分配当server process 开始的时候分配
$$$ps -ef | more或者 ps -ef | grep oracle或者opcs(内存通信的一种机制,查看分配内存和show sga接近)查看进程看oracle实例起来没有
SGA
是动态的,随着内存需求而扩张
SGA_MAX_Size 是上线
增大或者缩小分配内存的基本单位:granules(SGA<128M 时granules=10M,否则16M)连续的
S》select component,granule_size from v$sga_dynamic_components;
大小主要组成参数:DB_cache_size,log_buffer,shared_pool_size,large_pool_size,java_pool_size(reference/initiallized parameters/basic initialized parameter/说明含义)

Shared Pool
存储最近执行解析好的sql语句,most recently used data definitions
s》alter system set shared_pool_size=64M;
Library Cache
存储最近执行解析好的sql和PL/SQL语句,包括:shared sql area,shared pl/sql area
被least recently used(LRU)算法管理
由shared pool sizing 决定
Data Dictionary cache
存储数据库控制数据的所有信息,tables,users indexes,....
在sql解析时,服务器进程查找DD 寻找对象名称和权限问题
由shared pool sizing 决定
Database Buffer Cache
保存从数据文件的拷贝和即将写入数据文件的数据
DB_Block_size 觉得块大小
大小有3个子缓存:DB_cache_size,db_keep_cache_size,db_recycle_cache_size
db_cache_advice 设置是否收集不同cache size时行为的统计信息,统计信息放在v$db_cache_advice里面
S》alter system set DB_cache_size=96M
Redo Log Buffer
记录数据块的改变,主要目的是为恢复用的
记录的改变被称作redo entries,一条entries可以恢复一次改变
大小有log_buffer决定
Large Pool
RMaN时候用到,并行处理的时候用到parallel_automatic_tuning set to true
有large_pool_size决定
大小是动态的
Java_pool_size
process 结构
user process指客户端建立连接的进程,server process会话建立时客户端和oracle之间的进程,background process
background process
必需有的:dbwn,pmon,ckpt,lgwr,smon
可选的: arcn ,lmdn,qmnn,cjq,lmon,reco,dnnn,lms,snnn,lckn,pnnn
DBWn 何时写:检查点发生时
dirty buffers 达到预设值时
没有 freebuffers了
timeout 产生了
rac ping request is made
tablespace offline,tablespace read only,table drop or truncate,tablespace begin,backup
LGWR 吧redo log buffer写入redo log files
:at commit
:三分之一满时
1M redo时
每3秒
在 dbwn 写之前
SMON System monitor
PMON process monitor
Logical Struction
tablespaces,segments,extents,blocks
连续的block组成extents,1个segment 可以跨datafile,但extent不行,1个extent只能存在1个datafile里面


[@more@]

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

上一篇: 分区表
下一篇: 没有了~
请登录后发表评论 登录
全部评论

注册时间:2008-04-08

  • 博文量
    8
  • 访问量
    3996