一个实例可以有多个后台进程,但是,并不是每一个后台进程都会出出,通过视图v$bgprocess可以查看后台进程信息。
一般我们是通过以下sql查看后台必须的后台进程.
1.查看后台进程
select paddr,name,description
from v$bgprocess
order by paddr desc
;
2.这个视图中paddr<>'00'的行都是系统上配置和运行的进程(线程)
select *
from v$bgprocess t
where t.pADDR <>'00'
;
3.在linux系统上,启动实例后,有以下进程
我是在suse enterprise linux 10安装的oracle10g,(查看相应的版本命令为lsb_release –a)
查看实例启动的后台进程的命令
ps –aef|grep ‘ora_’
(
注明:这些进程的命名是有规律的.
a.所有的进程名都是以ora_开头
b.中间部份为进程的具体名字
c.最后一部份为ORACLE_ID名称,因为我的安装时使用默认的安装
)
4.介绍相应的几个后台进程及相关的作用.
a.PMON 进程监视器(process monitor)
这个进程负责在出现异常中止的连接之后的完成清理,如果你的专用服务器“失败”,”或者出现某种原因的撤消”,就要由PMON负责修正(恢复或撤销工作)。除了上述功能外,PMON还负责监视其他的oracle进程,并在必要时重启这些后台进程.
b.SMON 系统监视器(system monitor)
清空表空间,合并空闲空间,针对原来不可用的文件恢复活动的事务,执行RAC中失败节点的实例恢复,收缩回滚段.
c.CKPT 检查点进程(Checkpoint Process)
检查点进程并不像它的名字所暗示的那样真的建立检查点,建立检查点主要是DBWn的任务,CKPT主要是更新数据文件的首部.
d.DBWn 数据库块写入器 (database block writer)
数据库块写入程序将脏数据写入磁盘的后台进程.DBWn会写出缓冲区缓存中的脏块,通常是为了在缓存中腾出更多的空间,或者是为了推进检查点。
e.LGWR 日志写入器(log writer)
LGWR进程负责将SGA中的重做日志缓冲区的内容刷新出到磁盘,如果满足以下某个条,就会做这个工作。
每3秒会刷新输出一次
任何事务发出一个提交时
重做日志缓冲区1/3满,或者己经含1MB的缓冲数据
f.ARCn 归档进程(archive process)
ARCn进程的任务是,当LGWR将在线重做日志文件填满时,就将其复制到另一个位置,这些归档重做日志文件可以用于完成介质恢复。在线重做日志用于出电源故障(实例)时,“修正“数据文件,而归档重做日志文件它是在出现