it oracle 入门级 体系介绍

来源:互联网 发布:美工海报设计兼职 编辑:程序博客网 时间:2024/05/21 06:15


实 例
 
PGA(process global area 程序全局区):
结构:
stack   PGA   session info
  cursor info
sort area

stack 堆栈存放PGA各个部分的指针,Stack Space是用来存储用户会话变量数组的存储区域;
session info:存放会话信息用户信息,也是数据库返回目标判断条件。
cursor info :存放缓存sql语句软软解析的位置(默认50条)
sort area:排序区,将返回的结果集,根据执行计划进行排序。(ORDER BY、GROUP BY、ROLLUP、窗口函数);
(排序动作都在PGA sort area中执行,SGA中不存在排序区)
 


----------------------------------------------------------------------------------------


SGA(system global area 系统全局区):
Fixed Size
  ·oracle 的不同平台和不同版本下可能不一样,但对于确定环境是一个固定的值,里面存储了SGA各部分组件的信息,可以看作引导建立SGA的区域。

shared pool(共享池)
  library cache
·缓存sql,PL/SQL  
·hash-value
·执行计划
(三者关系:通过hash-value值=>sql文本=>执行计划)
  data DICT CACHE
·缓存包括数据字典的定义,如表结构、权限等
 
 
Database buffer cache(数据库缓冲区)
·数据库缓冲区的主要作用
在内存中缓存从数据库中读取的数据块
数据库缓冲区越大,为用户已经在内存里的共享数据提供的内存就越大,
这样可以减少所需要的磁盘物理读,调高性能。
 
 
largepool
·sql无关,用于备份加速。减少磁盘I/O
·用于MTS、并行查询和RMAN。如果使用了MTS或RMAN,large_pool特别有用,它可以降低用户对share pool的争用。


Java pool
  ·缓存Java命令服务分析要求
 
Streams pool(如没有分配空间,需要用时划分10%的shared pool空间)
·缓存数据同步

Redo log buffer (大小:512KB或1024KB)
·缓存数据块的变化块的位置及改变信息
update:sal 800 -> 1000
   redo log) T(事务) F(文件) B(块) R(ROW) C(COL) V(VAL)
T1 2 155 5 6 800
T1 4 135 5 6 1000
T(事务):包含:SCN(时间指针向量)、RDB
控制文件CPODS
连机日志保证redo日志的安全性
 
 
-------------------------------------------------------------------------------------- 
 
PMON过程监视进程(定期发包检测)
·重起非核心后台进程
·监控所用用户会话,回收垃圾资源,回退交易
·动态注册实列信息到监听程序
·集群环境参与采集cpu压力(负载均衡)
进程失败,后台PMON通过下面的方法进行清理
·回退用户的当前事务处理
·释放当前保留的所有表锁或行锁
·释放用户当前保留的其它资源
·重新启动已失效的调度程序
 

----------------------------------------------------------------------------------------
 
DBWn:数据库写进程
作用:
buffer cache中的脏数据写入磁盘
触发条件:
1.检查点
2.灰数据值达到10%buffer cache值
3.发现buffer cache中无可用空间(LRUW算法,LRU)
4.timeout超时
5.集群环境中的ping请求
6.drop,truncate操作
7.表空间只读(table space read only)
8.表空间离线(table space offline)
9.热备份 begin backup

----------------------------------------------------------------------------------------
 
SMON:系统监控进程
1.实列恢复
前滚重做日志中的更改
打开数据库供用户访问
回退未提交的事务处理
2.合并空闲空间
3.回收临时段

----------------------------------------------------------------------------------------
 
CKPT:检查点进程
·在检查点发信号给DBWn
·使用检查点信息更新数据文件的标头
·使用检查点信息更新控制
启动检查点的原因如下:
·确保定期向磁盘写入内存中发生修改的数据块,以便在系统或数据库失败时不会丢失数据
·缩短例程恢复所需的时间。只需处理最后一个检查点后面的重做日志条目以启动恢复操作
·确保提交的所有数据在关闭期间均已写入数据文件
CKPT写入的检查点信息包括检查点位置、系统更改号、重做日志中恢复操作的起始位置以及有关日志的信息等等。
注:CKPT并不将数据块写入磁盘,或将重做块写入联机重做日志。
 

----------------------------------------------

LGWR:日志写进程
·将LOG BUFFER中的日志写入硬盘。
触发:
1.Commit
2.log buffer三分之一满
3.timeout 3秒
4.DBWn写入前,日志写优先。
5.有1MB重做日志缓存时

--------------------------------------------------------------------------------

    
ARCn:归档程序
可选的后台进程,用于设置ARCHIVELOG 模式时自动贵练级重做日志,保留数据库的全部更改记录。
任务:当LGWR将再现重做日志填满之后,就将起复制到另外一位置,成为归档的重做日志。
 


图片还不怎么会上传,有个架构的图片会更好理解