新客网
首页 | 新闻 | 系统·网络·服务器·安全 | 工具·办公 | 编程·数据库 | 图象·网页·运营 | 硬件·存储 | 专题教程 | 论坛·old
 → 当前位置:首页 > 教程 > 数据库 > Oracle > 正文

关于Oracle实例的进程结构和内存结构

XKER.COM   2006-12-29 11:49:55  来源:  收藏本文

进程结构

进程是操作系统中的一种机制,它可执行一系列的操作步。在有些操作系统中使用作业(JOB)或任务(TASK)的术语。一个进程通常有它自己的专用存储区。ORACLE进程的体系结构设计使性能最大。

ORACLE实例有两种类型:单进程实例和多进程实例。

进程ORACLE(又称单用ORACLE)是一种数据库系统,一个进程执行全部ORACLE代码。由于ORACLE部分和客户应用程序不能分别以进程执行,所以ORACLE的代码和用户的数据库应用是单个进程执行。

在单进程环境下的ORACLE 实例,仅允许一个用户可存取。例如在MS-DOS上运行ORACLE 。

进程ORACLE实例(又称多用户ORACLE)使用多个进程来执行ORACLE的不同部分 ,对于每一个连接的用户都有一个进程

在多进程系统中,进程分为两类:用户进程和ORACLE进程。当一用户运行一应用程序,如PRO*C程序或一个ORACLE工具(如SQL*PLUS),为用户运行的应用建立一个用户进程。ORACLE进程又分为两类:服务器进程和后台进程。服务器进程用于

处理连接到该实例的用户进程的请求。当应用和ORACELE是在同一台机器上运行,而不再通过网络,一般将用户进程和它相应的服务器进程组合成单个的进程,可降低系统开销。然而,当应用和ORACLE运行在不同的机器上时,用户进程经过一个分离服务器进程与ORACLE通信。它可执行下列任务:

对应用所发出的SQL语句进行语法分析和执行。

从磁盘(数据文件)中读入必要的数据块到SGA的共享数据库缓冲区(该块不在缓冲区时)。

将结果返回给应用程序处理。

系统为了使性能最好和协调多个用户,在多进程系统中使用一些附加进程,称为后台进程。在许多操作系统中,后台进程是在实例启动时自动地建立。一个ORACLE实例可以有许多后台进程,但它们不是一直存在。后台进程的名字为:

DBWR 数据库写入程序;

LGWR 日志写入程序;

CKPT 检查点;

SMON 系统监控;

PMON 进程监控;

ARCH 归档;

RECO 恢复;

LCKn 封锁;

Dnnn 调度进程

Snnn 服务器。

每个后台进程与ORACLE数据库的不同部分交互。

下面对后台进程的功能作简单介绍:

DBWR进程:该进程执行将缓冲区写入数据文件,是负责缓冲存储区管理的一个ORACLE后台进程。当缓冲区中的一缓冲区被修改,它被标志为“弄脏”,DBWR的主要任务是将“弄脏”的缓冲区写入磁盘,使缓冲区保持“干净”。由于缓冲存储区的缓冲区填入数据库或被用户进程弄脏,未用的缓冲区的数目减少。当未用的缓冲区下降到很少,以致用户进程要从磁盘读入块到内存存储区时无法找到未用的缓冲区时,DBWR将管理缓冲存储区,使用户进程总可得到未用的缓冲区。

ORACLE采用LRU(LEAST RECENTLY USED)算法(最近最少使用算法)保持内存中的数据块是最近使用的,使I/O最小。在下列情况预示DBWR 要将弄脏的缓冲区写入磁盘:

当一个服务器进程将一缓冲区移入“弄脏”表,该弄脏表达到临界长度时,该服务进程将通知DBWR进行写。该临界长度是为参数DB-BLOCK-WRITE-BATCH的值的一半。

当一个服务器进程在LRU表中查找DB-BLOCK-MAX-SCAN-CNT缓冲区时,没有查到未用的缓冲区,它停止查找并通知DBWR进行写。出现超时(每次3秒),DBWR 将通知本身。当出现检查点时,LGWR将通知DBWR.在前两种情况下,DBWR将弄脏表中的块写入磁盘,每次可写的块数由初始化参数DB-BLOCK-WRITE-BATCH所指定。如果弄脏表中没有该参数指定块数的缓冲区,DBWR从LUR表中查找另外一个弄脏缓冲区。

如果DBWR在三秒内未活动,则出现超时。在这种情况下DBWR对LRU表查找指定数目的缓冲区,将所找到任何弄脏缓冲区写入磁盘。每当出现超时,DBWR查找一个新的缓冲区组。每次由DBWR查找的缓冲区的数目是为寝化参数DB-BLOCK-WRITE-BATCH的值的二倍。如果数据库空运转,DBWR最终将全部缓冲区存储区写入磁盘。

本新闻共3页,当前在第1页  1  2  3  

上一篇教程:Oracle中集成安装客户端与应用程序
下一篇教程:没有了
收藏本文】 【我要投稿】 【打印本文】 【论坛讨论】 【关闭窗口

相关文章
·Oracle中集成安装客户端与应用程序·Oracle数据转储时字符集的转换规律
·关于提高Oracle数据库性能的四个误区·在ASP中连接Oracle数据库的例子
·SQL Server 与Oracle的不同点(从微观上)·用 Oracle AS 10g 为PHP提供的一次性登录
·你的INTERNAL帐号密码忘记了怎么办·用PHP连mysql和oracle数据库性能比较
·ORACLE的日志管理·比较SQL Server2005和Oracle 10g R2
·获取本机上配置好的Oracle服务名·DB2数据库与Oracle数据库之间远程复制
·Oracle数据库的ORA-00257故障解决过程·Oracle数据的异地自动备份
·Oracle SQL性能优化系列讲座·oracle教程 Oracle实例恢复详细分析总汇

学院文章搜索
  
推荐文章
·最新javascript 技巧集
·PS CS3教程:教你打造图片
·巧施妙招解决Windows2003服
·X-Window环境下配置nVIDIA
·了解进程和病毒十七点相关
·七大步骤建立可靠的Linux操
·Java路径问题最终解决方案
·P2P端口映射UPnP功能和使用
·Recover My Files让删除文
·揭开BIOS中的绝对宝藏
阅读排行
·免费代理IP(每日更新)
·端口·木马·安全·扫描应
·Windows远程控制完全指南
·QQ号码激活系统常见问题及
·妙用ISEE三步将女友照片变
·解除关机后鼠标还亮的问题
·IP地址冲突问题的解决和预
·SQL优化实例:从运行30分钟
·其实很简单——防火墙设置
·轻轻松松写简历,助你马到
专题教程
·photoshop抠图教程
·PHP教程专题
·MySQL 专题
·数据恢复指南 专题
·Web服务器专题
·DB2 9数据库专题
·ghost教程 专题
·局域网技术专题
·虚拟机专题
·CDN加速技术专题
最新文章
·关于Oracle实例的进程结构
·Oracle中集成安装客户端与
·Oracle数据转储时字符集的
·Photoshop简单酒吧网页制作
·支付宝明年收费 淘宝用户继
·巧解无线路由器不正常工作
·应急磁盘“附加信息”文字
·关于IE7.0浏览器的快捷秘笈
·技巧:实现IIS与Apache共用
·[形色图说]绝色后期教程2:
·photoshop绘制印度小美人
·Photoshop轻松打造至酷iPo
·Photoshop CS3亲密接触(5)
·[数字暗房]古铜色效果制作
·[数字暗房]打造雪景婚纱照
设为首页 - 加入收藏 - 版权声明 - 广告服务 - 关于我们 - 联系我们 - 友情连接
Copyright © 2003 - 2006 XKER Inc. All Rights Reserved
新客网 版权所有