微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Oracle 各后台进程功能说明

一、SMON:系统监督进程
1.主要是已经提交的数据但是还没有进行写入数据文件给断电了,重启的时候,smon 就会进行恢复
a.执行前滚,将已经写入重做日志文件但是还没有写入到数据文件中的数据(使用scn 号码来识别提交记录的)
b.打开数据库
c.回滚没有提交的事务
2.还可以进行磁盘空间维护工作
a.回收或者合并数据文件中相连的空闲区
b.释放临时段
二、PMON:进程监督进程
1.当某个进程崩溃,PMON 将负责进行如下的清理工作
a.回滚用户当前事务
b.释放用户所加的所有表一级和行一级的锁
c.释放用户所有的其他资源等
三、CKPT:校验(检查)点和检验点进程
1.提高系统效率和数据库一致性,引入了校验点的事件,CKPT 是在DBWR 将高速缓冲中的数据写入到数据文件上的时
候产生的,理论上说它是不需要的
可以通过redo log 和 scn 保证了完全恢复,引入它是为了提高效率,因为所有的校验点为止的变化都已经写入到数
文件中了,在恢复的时候
校验点之前的重做日志就不在需要了,这样实例恢复就加快了,CKPT 会将校验点写入到所有相关的数据文件文件头中,还要将校验点号码、重做日志序列号、归档日志名称和最低、最高scn 号都会写入控制文件中,由于ckpt 会产生大量的IO操作,因此不能频繁的产生校验点,最好在20 分钟以上
四、ARCn:归档日志进程
1.当一组重做日志文件写满后,会写另外一组,当最后一组写满后会在写第一组,叫做日志切换
2.如果没有开归档,那么覆盖后就无法进行恢复了
3.如果开了归档,那么就会使用arch 进程进行写入归档日志文件中,oracle 会确保在一组重做日志的归档操作完成
之前不会重新使用该组日志
五、DBWn:数据库写进程
1.11g 之前只可以有0~9,10 个进程,11g 之后可以有36 个,0~9 和a~z,通过 db_writer_processes 来设置个数
的,如果启动的时候没有说明个数
那么是由cpu 的个数来决定的该参数的
2.当以下情况发生时,DBWR 会将高速缓冲区中的数据写入到数据文件
a.当脏缓冲区的数量超过了所设定的限额
b.所设定的时间间隔已到
c.有进程需要高速缓冲区,但是没有空闲的高速缓冲区空间时候
d.校验(检查点)发生时
e.某个表被删除或者截断(truncate,drop)
f.某个表空间被设置为只读
g.表空间进行联机备份时
h.表空间被设置为脱机时
六、LGWR:重做日志写进程1.将重做日志缓冲区的记录顺序写入到重做日志文件中,这里注意它是顺序写入的,因此IO 相对要小2. commit 语句怎样工作,这里使用了快速提交技术a.服务器进程把提交的记录连同产生的scn 号码一起写入重做日志缓冲区中b.LGWR 将重做日志缓冲区中的记录写入在重做日志文件中,这样就可以保证恢复了c.oracle 通知用户(进程)提交已经完成e.服务器进程将修改数据库高速缓冲区中相关数据的状态并释放资源和打开锁(这个时候可能这些数据并没有写入到数据文件中,他们标记为脏数据,之后由DBWR 写入数据文件)3.以下情况LGWR 会写入重做日志文件a.事务提交b.重做日志缓冲区中的记录超过了缓冲区容量的1/3c.DBWR 将数据库高速缓冲区中的数据块写入到数据文件之前d.每3 秒

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


Java Oracle 结果集是Java语言中处理数据库查询结果的一种方式。通常情况下,Java程序会通过JDBC连接Oracle数据库并执行一条查询语句,返回一个ResultSet结果集。ResultSet是一个行集,包含了查询语句的返回结果。在
Java AES和Oracle AES是现代加密技术中最常使用的两种AES加密。在计算机通信领域,AES加密算法是一种十分重要的保密技术,被广泛应用于银行、保险、互联网电子支付等重要场合。
Java是一种广泛应用的编程语言,具备可靠性、安全性、跨平台性等优势,被广泛应用于企业级应用开发。而Oracle11g是一个强大的关系型数据库,由于其优秀的可靠性、安全性和扩展性,已经被广泛应用于企业级应用中。Jav
随着移动互联网的发展,抽奖活动成为了营销活动中不可或缺的组成部分。为了满足移动端用户的需求,我们可以使用jQuery开发移动端大转盘抽奖活动。
Java和Oracle都是在计算机领域应用非常广泛的技术,他们经常被用来搭建高效的软件系统。Java是一种面向对象的编程语言,而Oracle是一种关系型数据库管理系统。Java 和Oracle在应用中的联系非常紧密,它们能够通过相互
Java 是一门非常流行的编程语言,它可以运行于各种操作系统上,而 Oracle 是一个广泛使用的数据库软件。在 Java 对 Oracle 进行操作时,需要使用 Oracle 参数来确保程序正确工作。本文将从 Oracle 参数的定义、分类
随着电子竞技的兴起,越来越多的人开始慕名玩起了王者荣耀。而对于Python爱好者来说,这款游戏也有着很大的吸引力。因为Python可以帮助我们获取并处理游戏数据,从而获得更好的游戏体验。
Java与Oracle在数据处理方面都有着非常重要的地位,而在Java和Oracle的结合中,Integer类型则起到了不可替代的作用。Integer类型是Java中一个非常常用的数据类型,它可以表示范围在-2147483648到2147483647之间的整数
如今,JavaScript已经成为了web开发的必备技能之一,而IE浏览器也是众多开发者最常用的浏览器,那么,如何启用IE浏览器的JavaScript呢?
Java与Oracle是当今软件行业中广泛使用的两个技术。而SP(Stored Procedure)是Oracle数据库中存储过程的组件,可以在Java中调用Oracle数据库中的SP。在开发过程中,Java和Oracle的组合可以方便处理大规模的数据和建