ITPub博客

首页 > 数据库 > Oracle > Oracle进程(Expert Oracle)

Oracle进程(Expert Oracle)

原创 Oracle 作者:zhangjihang 时间:2009-01-14 10:21:51 0 删除 编辑

先恭喜下自己的BLOG开通了,这也是我的第一个BLOG,开通它是为了让自己能更好的学习,如果能对别人有帮助那当然更好了。

最近在学习Tom的Expert Oracle整理了一些笔记。

Oracle实例3类主要进程:

1. 服务器进程(server process)

2. 后台进程(background process)

3. 从属进程(slave process)

在一些操作系统上,进程即为线程,如WINDOWS。在UNIX上,则为进程。

服务器进程:代表客户完成工作的进程。

[@more@]

Oracle连接

1. 专有服务器连接

客户连接与服务器进程一对一的关系

客户/服务器进程优点:

可以远程执行,地址空间隔离(客户进程与服务器进程非物理链接在一起)

非OLTP环境,有长时间运行事务应只考虑使用专有服务器

2. 共享服务器链接

强制要求使用Oracle Net,如不使用Oracle TNS监听器,就无法使用共享服务器。

客户应用→调度器→请求队列→服务器进程(附加UGA)→响应队列→调度器→客户应用

只适用于OLTP系统,事务持续时间短,防止共享资源被少数进程长时间独占

优点:减少操作系统进程/线程数,刻意地限制并发度,减少系统所需内存

连接与会话

连接是从客户到Oracle实例的一条物理路径

会话是实例中存在的一个逻辑实体

一条连接可以有0个或多个会话

例:当启用AUTOTRACE时,Oracle会在通一条连接中启动另一个会话来监视当前活动会话的情况。(原因是如在同一会话中监视,会导致数据不准确,监视会话会查询v$sesstat表,也有排序,I/O)

disconnect命令为结束所有会话,exit为结束连接

中心后台进程

系统正在使用的后台进程查询:select paddr,name,description from v$bgprocess;

PMON:清理出现异常中止的连接

监视其他Oracle后台进程,必要时重启这些进程

向Oracle TNS监听器注册实例

SMON:清理临时空间,合并空闲空间

针对原来不可用的文件恢复活动的事务

执行RAC中失败节点的实例恢复(正常节点打开失败节点的重做日志,并进行恢复)

清理OBJ$(清理可能已删除的对象等)

收缩回滚段,离线回滚段

RECO:分布式数据库恢复

CKPT:只更新数据文件头

DBWn:可以配置多达20个DBWn来提高写出块的速度

DBWn为分散写,异步写

LGWR:LGWR为顺序写,速度比DBWn快得多

ARCn:将联机重做日志复制到另一个位置,形成归档日志

Oracle RAC

集群中的多个实例可以打开一个数据库,每个实例在单独的节点上运行

高可用性:集群中一个节点损害,其他节点可以继续工作,也许会丧失一些计算能力,但不会因此无法访问数据库

可扩缩性:无需购买更大的机器来处理越来越大的工作负载(垂直扩缩),可以在集群中增加更多的机器(水平扩缩)

LMON(Lock monitor):监视所有实例,检测是否有实例失败,以恢复

失败实例持有的全局锁

LMD(Lock manager daemon):全局缓存服务处理锁管理器服务请求

LMSn(Lock manager server):保持块缓冲区在实例间一致

LCK0:类似于LMD,但它处理全局资源的请求,而不是数据库块缓冲区的

请求

DIAG(Diagnosability daemon):监视实例的总体“健康状况”,捕获所需信息

工具后台进程

CJQ0:作业队列协调器

Jnnn:作业队列进程,最多1000个(J000,J001…J999),当不使用时即

消失

CJQ0进程用于调度Jnnn进程处理作业

QMNC:高级队列协调器

Qnnn:高级队列进程,只要设置了,就会一直存在

EMNn:事件监视器进程,服务于高级队列,用于通知对某些消息感兴趣的队列订购者

MMAN:10g新增,用于协调SGA中共享内存各组件的大小

MMON:10g新增,“自动检测”数据库性能,实现自调整

MMNL:10g新增,从SGA将统计结果输出至数据库表

Mnnn:10g新增,由MMON进程发出请求,Mnnn完成工作

CTWR:10g新增,负责维护新的修改跟踪文件

RVWR:10g新增,负责维护闪回回复区中块的“前映像”

从属进程

I/O从属进程

为支持异步I/O的系统或设备模拟异步I/O,如磁带设备

RMAN写磁带时可能利用I/O从属进程

参数:BACKUP_TAPE_IO_SLAVES(TRUE/FALSE) 指定RMAN是否使用IO

从属进程将数据备份,复制或恢复到磁带上。

DBWR_IO_SLAVES 指定DBW0进程所用的I/O从属进程数(DBWR

I/O从属进程名为I1nn,LGWR I/O从属进程名为I2nn)。

并行查询从属进程

使用多个CPU并行完成查询,名字为Pnnn

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/10176825/viewspace-1016079/ ,如需转载,请注明出处,否则将追究法律责任。

上一篇: 没有了~
下一篇: 故障处理2则
请登录后发表评论 登录
全部评论
  • 博文量
    16
  • 访问量
    89004