Oracle进程结构
来源:互联网 发布:驱动软件下载排行榜 编辑:程序博客网 时间:2024/06/05 14:19
在oracle数据库启动时,首先启动oracle实例,系统将自动分配sga(系统全局区)并启动多个后台进程,在系统启动后异步地为所有数据库用户执行不同的任务
通过查询字典V$bgprocess 可以了解数据库中启动大后台进程信息,其中,oracle数据实例的后台进程主要有DBWn进程,LGWR进程,SMON进程,PMON进程、ARCn进程、RECO进程、LCKn进程、Dnnn进程以及SNPn进程
1.DBWn进程
DBWn(Database Writer,数据库写入)进程,是Oracle中采用LRU(Least Recently Used,最近最少使用)算法将数据缓冲区大火数据写入数据文件大进程。
LRU(LEAST RECENITY USED),是数据缓冲区大一种管理机制,只保留最近数据,不保留旧数据
DIRTY 表示脏列或者叫“弄脏了大数据”,实际上就是指被修改但还没有被写入数据文件的数据
DBWn进程的作用主要有以下几个方面
管理数据缓冲区,以便用户进程能找到空闲的缓冲区。
将所有修改后大缓冲区数据写入数据文件
使用LRU算法将最近使用过的块保留在内存中
通过延迟写来优化磁盘I/O读写。
DBWn进程大工作流程如下,
(1)当一个用户进程产生后,服务器进程查找内存缓冲区中是否存在用户进程所需要的数据。
(2)如果内存中没有需要的数据,服务器进程就从数据文件中读取数据,此时,服务器进程会首先从LRU中查找是否有存放数据的空闲块
(3)如果LRU没有空闲块,则将LRU中的DIRTY的数据移入DIRTY LIST(弄脏表)。
(4)如果DIRTY LIST 超长,服务器进程通知DBWn进程将数据库写入磁盘,刷新缓冲区
2.LGWR (log writer,日志写入)进程
ORACLE数据库运行时,对数据库的修改操作将被记录到日志信息中,而这些日志将首先保存在日志缓冲区中。当日志信心达到一定数量时,由LGWR进程将日志数据写入日志文件中。
使用LGWR进程将缓冲区中的日志数据写入磁盘的情况主要有以下那几种
@用户进程提高事物。
@日志缓冲区已满1/3
@出现超时
@DBWn进程为检查点清楚缓冲区块
@一个实例只有一个日志写入进程
@事务被写入日志文件,并确认提交
3.SMON进程
SMON(System Monitor,系统监控)进程,用与数据库实例出现故障或系统崩溃时,通过将联机重做日志文件中大条目应用于数据文件来执行崩溃恢复,SMON进程一般用于定期合并字典管理的表空间中的空闲空间,此外,她还用与在系统重新启动期间清理所有表空间的临时段。
4.PMON进程
PMON(process monitor,进程监控)进程,用于清楚失效大用户进程,释放用户进程所用的资源。PMON 进程周期性检查条读进程和服务器进程的状态,释放用户进程所用大资源。PMON 进程周期性检查调度进程和服务器进程的状态,如果发现进程已死,则重新启动它,PMON进程被有规律地唤醒,检查是否需要使用,或者其他进程发现需要是也可以调用此进程
- Oracle的进程结构
- Oracle 进程结构
- Oracle进程结构
- Oracle 进程结构
- oracle实例进程结构
- Oracle后台进程结构简介
- Oracle实例的进程结构
- oracle体系结构-进程结构 概述
- Oracle体系结构:内存结构和进程结构
- Oracle体系结构:内存结构和进程结构
- Oracle 内存结构和进程结构
- Oracle 概念(Oracle 10.2) 进程结构
- oracle实例进程和数据库结构
- Oracle内存和进程结构详解
- Oracle 进程结构(Process Structure)
- oracle体系结构三部曲之进程结构
- Oracle的体系结构(五)进程结构
- 关于Oracle进程结构及后台进程简介
- Git使用基础
- HTML5 经典弹球过关游戏的简化版本
- linux/unix下setuid/seteuid/setreuid/setresuid
- Remove Duplicates from Sorted Array II
- 要这么写if(1==x)
- Oracle进程结构
- 用代码改变image的大小
- 统计一篇文章中各个字母出现的次数和百分比
- zedboard(二)----开机启动过程
- 跟我一起写 Makefile
- 数字与金额转换
- Xcode 快捷键
- 1. retain,assign,copy,strong,weak的一点整理
- 回文数