网络编程 | 站长之家 | 网页制作 | 图形图象 | 操作系统 | 冲浪宝典 | 软件教学 | 网络办公 | 邮件系统 | 网络安全 | 认证考试 | 系统进程
Firefox | IE | Maxthon | 迅雷 | 电驴 | BitComet | FlashGet | QQ | QQ空间 | Vista | 输入法 | Ghost | Word | Excel | wps | Powerpoint
asp | .net | php | jsp | Sql | c# | Ajax | xml | Dreamweaver | FrontPages | Javascript | css | photoshop | fireworks | Flash | Cad | Discuz!
当前位置 > 网站建设学院 > 网络编程 > 数据库 > Oracle教程
Tag:注入,存储过程,分页,安全,优化,xmlhttp,fso,jmail,application,session,防盗链,stream,无组件,组件,md5,乱码,缓存,加密,验证码,算法,cookies,ubb,正则表达式,水印,索引,日志,压缩,base64,url重写,上传,控件,Web.config,JDBC,函数,内存,PDF,迁移,结构,破解,编译,配置,进程,分词,IIS,Apache,Tomcat,phpmyadmin,Gzip,触发器,socket
数据库:数据库教程,数据库技巧,Oracle教程,MySQL教程,Sybase教程,Access教程,DB2教程,数据库安全,数据库文摘
本月文章推荐
.教你如何彻底删除Windows上的 Or.
.ORACLE 面试问题-技术篇.
.Oracle 数据库管理脚本命名.
.使用 db_file_multiblock_read_c.
.LILO使用指南(下).
.Oracle 8i迁移到10g出现的问题及.
.关于Oracle 9i数据库密码重用规则.
.基于主键和唯一约束的显示索引控.
.9i新特性之一连接篇.
.使用目录 2.1. 目录: 前言.
.数据库手册:Oracle维护常用SQL语.
.oracle 10G 安装 for Linux86.
.Oracle的SQL*PLUS命令的使用大全.
.Oracle数据库中如何根据时间来执.
.使用utl_file将oracle数据库中数.
.在存储过程中拥有"role"权限的特.
.你的INTERNAL帐号密码忘记了怎么.
.破解Oracle中国高层频繁变动之谜.
.oracle9i日常操作总结.
.利用多个转储文件导出大量Oracle.

Oracle数据库的后台进程管理技术介绍

发表日期:2008-2-9


    1、PMON (The Process Monitor) 进程监控器     主要负责连接非正常中断后的清除工作,PMON负责释放相应的资源。     PMON将回滚没有提交的工作,释放锁,释放分配给这个失败进程的Free SGA资源。除了清理失败的连接之外,PMON还负责监控所有其它的Oracle后台进程,假如有需要的话,将重起这些后台进程,比如一个 shared server或者一个dispatcher fail的话, PMON将跟进,重起另一个相应的进程。     2、SMON (The System Moniter) 系统监控器     主要负责其它进程不想处理的工作的进程,是数据库的一种“垃圾回收站”,主要包括:     2.1、临时空间的清除;     比如创建索引失败时,SMON将负责清除在创建索引过程当中分配出来的Temporary extent.     2.2、崩溃恢复;     2.3、Coalescing free space;     这个是在字典治理的表空间才会有的,SMON将表空间中连续的空闲的extent,合并成一个大的free extent.这只能发生在字典治理的表空间,并且pctincrease 被设置成非零的时候。     2.4、Recovering transactions active against unavailable files;     2.5、OPS中失败节点的实例恢复;     在OPS中,当一个节点Fail,其它节点将打开失败节点的重做日志,对失败节点执行恢复(注重:实例恢复和崩溃恢复的区别)。     2.6、清除OBJ$;     2.7、Shrinks 回滚段;     假如设置了Optimal,那么SMON将执行自动 Shrink 回滚段到Optimal 大小。     2.8、脱机 回滚段;     举个例子,比如在切换回滚表空间的时候,由于可能之前的回滚表空间中有活动的事务,所以回滚表空间中的一些回滚段可能并不是真正的脱机,而只是标志为" Pending offline",要等到活动事务提交或回滚之后,相应的回滚段才算真正的脱机,而SMON则周期性的在后台去真正的脱机回滚段,直到回滚段真正的脱机为止。     3、CKPT (Checkpoint Process)     CKPT进程并不像它的名字暗示的那样会进行一个checkpoint事件,它只是更新数据文件头。Oracle 8.0之前,CKPT是一个可选进程,之后就总是开启的了,更新数据文件头在CKPT出现之前这是LGWR的任务,但是后来随着文件数量增大,这个LGWR的附加任务变得太大而成为负担。于是就出现了CKPT,由CKPT分担着这部分任务。     4、DBWn (Database Block Writer)     DBWn是一个负责将dirty blocks写到磁盘的后台进程,通常将dirty blocks写到磁盘是为了腾空更多的空闲空间(为了其它数据的读 而释放缓冲区), 或者advance 一个检查点事件(也就是在发生故障实例恢复时, 将联机重做日志中Oracle开始读取的位置 前移以节省实例恢复的时间)Log Switch 会触发一个Checkpoint,Oracle 需要advance这个Checkpoint以至于在实例恢复时不需要这个刚被填满的online redo log,假如在重用这个日志之前,不能完成这个advance Checkpoint的操作,则我们在alert将发现"Checkpoint not Compelete"信息,并且必须等待这个事件的完成。     5、LGWR (Log Writer)     LGWR负责将Redo log buffer (位于SGA中)中的内容写入到联机日志文件。     下面几种情况将会触发LGWR写log buffer:     5.1、每三秒;     5.2、当用户commit时;     5.3、当重做日志缓冲区 1/3满 或者包含1M 的缓冲数据时。     由于上面的原因,使用一个大于3M的重做日志缓冲区是不实际的——Oralce永远无法完全使用它。与DBWn必须执行分散的I/O 不同,重做日志是以顺序写入的方式写入的,这样执行大量的批写入更加有效率。     6、ARCn (Archive Process)     ARCn是负责copy 已经写满的online redo log到另外一个地方。注重这里的redo log的copy不是文件级别的Copy,而是copy redo log里面的entries.这些归档日志可以用来处理Media Recovery.比如你的system01.dbf文件丢失,那么你可以利用你一周前的备份,Restore 该数据文件。     然后请求数据库应用从备份开始后的所有的归档日志和在线日志文件,这样的话,该数据文件就可以“追”上数据库中的其它的数据文件,然后我们可以继续processing,而不会丢失数据。中文翻译 "catch up" that file with the reset of the datafiles in our database.中的"cacth up"翻译为"弥补",我觉得翻译成"追"更合适,因为这样才能更好的理解日志其实是一种数据流。
    实际上,备份是baseline,而日志是一种数据流,指向到系统crash的点,两者共同使用才能回到当前点,其实中文就这个很模糊,所谓恢复是两件事情,restore和recover .     7、RECO (Distributed Database Recovery)
上一篇:如何保持Oracle数据库优良性能 人气:571
下一篇:如何从FORM中调用REPORT程序? 人气:651
浏览全部Oracle教程的内容 Dreamweaver插件下载 网页广告代码 祝你圣诞节快乐 2009年新年快乐