Oracle进程概览
2011-06-02 17:48 马哈鱼 阅读(397) 评论(0) 收藏 举报 一 用户进程
当用户运行应用程序或Oracle工具时,Oracle创建用户进程。
1 连接和会话
a)连接:是用户进程和Oracle实例之间的通讯通道,该通讯通道通过进程间通讯机制或网络软件建立,属于物理连接,该连接可能是一个专用服务器进程或一个调度进程;
b)会话:是用户进程和Oracle实例之间的特定连接,是内存数据结构集合,用于执行SQL、提交事务并运行存储过程等;
一个连接可能有零个、一个或多个建立在其上的会话。每个会话是分开且独立的。会话中的某个提交并不影响在该连接上的任何其他会话。一个会话不一定有连接。一个物理连接可以被客户端删除,只保留一个空闲会话。当客户端要在该会话中完成一些操作时,就需要重新建立物理连接。
二 服务器进程
Oracle 创建服务器进程控制连接到实例的用户进程请求。在应用程序和Oracle 均在同一机器上时,有可能把用户进程和对应的服务器进程组合在一起以减少系统负载。 服务器进程可以执行以下任务:
分析和执行 sql语句;
读取需要的数据块到SGA 中的数据库缓冲中;
返回应用程序的执行结果;
三 后台进程
1 DBWn:将缓存中的脏数据写到磁盘上的数据文件中。可以配置DBW1到DBW9和DBWa到DBWj进程以提高写性能。 这些额外的DBWn进程在单处理器系统中作用不大。 初始化参数DB_WRITER_PROCESSES指定DBWn的进程数目。 最大为20。如果用户没有指定, Oracle 基于 CPU 和处理器组的数目设置该参数。
DBWn 进程在以下情况下写脏缓存到磁盘中: 当服务器进程在扫描了阀值数目的缓存后, 不能找到干净的重用缓存,服务器进程会发出写信号到 DBWn。DBWn 在执行其他进程的时候异步写脏缓存到磁盘上; DBWn 周期性的写缓存以提升检查点(在重做线程中实例恢复的起始位置)。
2 LGWR: 负责重做日志缓存的管理:把重做日志缓存写到重做日志文件中。 重做日志缓存是循环的缓存。
3 CKPT: 当检查点发生时,Oracle 必须更新所有数据文件以记录检查点的细节信息。
4 SMON: SMON 在实例启动需要的时候执行恢复。SMON 负责清除不再使用的临时段。
5 PMON: 当用户进程故障时执行进程恢复。PMON 负责清除数据库缓冲缓存并释放用户进程使用的资源。
6 RECO: 是在分布式数据库配置中使用的后台进程,自动解决与分布式事务相关的故障。一个节点上的RECO 进程自动连接到另外一个与可疑的分布式事务有关的数据库上。RECO 只在实例运行分布式事务的情况下出现。
7 ARCn: 归档进程在日志切换后拷贝重做日志文件到规划的存储设备上。 一个实例可以有 10 个归档进程。在 LGWR 启动归档进程后会在警告文件中写日志。 系统指定决定需要多少归档进程,LGWR 在数据库负载需要更多归档进程时自动启动归档进程。
浙公网安备 33010602011771号