LGWR,DBWR,SMON,PMON,CKPT是必需的五个后台进程。ARCH是最重要的可选后台进程。
最重要的六个进程:
1.LGWR
重做日志写进程,LOG write 负责将重做日志缓冲区记录顺序写入重做日志文件。LGWR在下列情况下将重做日志缓冲区记录(内存)顺序写入重做日志文件(外存)中5种情况:
某个事务被提交时,重做日志缓冲区中变化记录超过1M,当重做日志缓冲区中所存记录已经超过缓冲区容量的三分之一时,在DBWR将数据库高速缓冲区中修改过的数据块写到数据文件之前;每3秒。
在ORACLE 11G中:LGWR写日志条件变为三个:COMMIT,达到缓冲区三分之一,DBWR写之前.
11G实验步骤是:在一个会话SQLPLUS中开启时间提示,做插入:insert into test values(9,999888); 另一个会话做:strings /u01/oradata/bys3/redo03.log| grep 999888
可以照这思路多做几次,能发现LGWR不是3秒超时就写日志的。  但是用DTRACE来跟踪LGWR进程,会发现LGWR确实是每3秒sleep,唤醒这样的。
2.DBWR
数据库写进程,DBWR/DBWn,负责将数据库高速缓冲区中数据写到数据文件上。
DBWR在下列情况下将数据库高速缓冲区中的数据写到数据文件:8种情况
当脏缓冲区的数量超过所设定的限额;所设定的时间间隔已到;当有进程需要数据库高速缓冲区却找不到空闲缓冲区时;校验点发生时;某个表被删除或截断时;某个被表空间被设置为只读状态时;对某表空间进行联机备份时;某个临时表空间被设置为只脱机状态或正常状态等。
3.SMON
系统监管进程,如系统崩溃、断电后重新开启时,SMON将自己执行恢复工作。步骤为:
执行前滚,ROLL FORWARD,将写入重做日志文件但未写入数据文件中的提交数据写到数据文件中(SCN)
前滚完成后立即打开数据库,此时可以登录并使用数据库,这时数据文件中可能有未提交数据,回滚没提交的事务(数据)。
SMON还进行回收或组合数据文件中相连的空闲区,释放临时段等磁盘空间维护工作。4.PMON
进程监督进程,当某个进程崩溃时,如未正常退出SQLPLUS等,PMON负责如下清理工作:
回滚用户当前的事务,释放用户所加的所有表一级和行一 级的锁,释放用户所有其它资源。同时负责:动态注册监听,清除用户进程、服务器进程
5.CKPT
检查点进程,checkpoint 检查点,检查点事件是当DBWR进程把在SGA中所有已经改变的数据库调整缓冲中的数据(包括提交和未提交数据)写到数据文件上时产生。  检查点可提高效率。因为所有到检查点为止的变化的数据都已经写入数据文件中,在实例恢复时检查点之前的重做日志记录就不再需要,实例的恢复速度就加快了。一般的检查点间隔在半小时以上。
6.ARCH/ARCn
归档日志进程,最重要的可选后台进程,因为如数据库数据文件丢失或损坏,一般数据库要进行完全恢复,ORACLE数据库将运行在归档模式。
#######################################################################################
其它进程
7.MMAN 
内存管理进程,负责内存的动态管理,分配和收回。Oracle 10g提供了一个新的初始化参数:sga_target来启动ASMM,该参数定义了整个SGA的总容量。
同时,初始化参数statistics_level必须设置为typical或all才能启动ASMM,如果设置为basic,则关闭ASMM。
ASMM只能自动调整5个内存池的大小,它们是:shared pool、buffer cache、large pool、java pool和stream pool。我们不再需要设置这五个初始化参数。
而其他的内存池,比如log buffer、keep buffer cache等仍然需要DBA手工进行调整。
8.CJQ0  job
 任务协调进程,负责数据库中JOB的自动执行。
9.J001
job具体执行进程,接受CJQ0分发的job任务。
10.VKTM
这个进程用于提供一个数据库的时钟,每秒更新;或者作为参考时间计数器,这种方式每20毫秒更新一次,仅在高优先级时可用。通过VKTM进程,数据库可以降低和操作系统的交互.
11. DIAG
主要用来捕获实例中失败进程的诊断信息,并生成相应的TRACE文件。该进程自动启动不需要进行调整,如果该进程失效则自动重新启动。
12.DBRM
 Oracle资源管理器(Oracle Database Resource Manager,以下简称DBRM)管理数据库资源,为不同的会话分配不同的数据库资源。DBRM管理的资源主要包括CPU时间。
13.RECO
分布式数据库恢复:基于2PC分布式协议,允许多个不同的修改实现原子提交,但是在真正提交前,出现网络失败等错误,事务成为一个可疑的分布式事务.此时就需要RECO来负责联系事务协调器来发现协调的结果。在这之前事务会保持未提交状态.当恢复网络或者错误解决后,RECO可能会提交事务,也可能将事务回滚
14.QMNC Q002
高级队列进程:QMNC会监视高级队列.并告诉从队列中删除等待消息的"出队进程":已经有一个消息变为可用.它们还要负责队列传播
15.SMCO 
空间管理协调器进程:协调数据库的主动空间管理。
16.PSP0 
进程生成器进程:它主要负责生成各个后台进程.
17.DIA0 
另一个数据库诊断进程,负责检测Oracle数据库中的挂起(hang)和死锁的处理。
18.W000
命名为W000,W001,W002.....,由smcO动态产生执行上述相关任务。
19.MMON 
manageability monitor,与oracle10g的新特性--诊断功能相关,负责管理一些后台任务,比收集最近修改过的 SQL 对象的统计信息
20.MMNL
与oracle10g的新特性--诊断功能相关,会根据调度从SGA将统计结果--如会话的历史信息,刷新输出至数据库表。
21.VKRM 
Virtual Scheduler for Resource Manager Process
22.GEN0
Performs required tasks including SQL and DML
查询后台进程:
LINUX:
[oracle@bys001 ~]$ ps -ef|grep ora_
oracle   21393     1  0 09:27 ?        00:00:07 ora_pmon_bys1
oracle   21397     1  0 09:27 ?        00:02:59 ora_vktm_bys1
oracle   21403     1  0 09:27 ?        00:00:03 ora_gen0_bys1
oracle   21407     1  0 09:27 ?        00:00:03 ora_diag_bys1
oracle   21411     1  0 09:27 ?        00:00:03 ora_dbrm_bys1
oracle   21415     1  0 09:27 ?        00:00:06 ora_psp0_bys1
oracle   21419     1  0 09:27 ?        00:00:11 ora_dia0_bys1
oracle   21423     1  0 09:27 ?        00:00:03 ora_mman_bys1
oracle   21427     1  0 09:27 ?        00:00:06 ora_dbw0_bys1
oracle   21431     1  0 09:27 ?        00:00:06 ora_lgwr_bys1
oracle   21435     1  0 09:27 ?        00:00:12 ora_ckpt_bys1
oracle   21439     1  0 09:27 ?        00:00:04 ora_smon_bys1
oracle   21443     1  0 09:27 ?        00:00:01 ora_reco_bys1
oracle   21447     1  0 09:27 ?        00:00:09 ora_mmon_bys1
oracle   21451     1  0 09:27 ?        00:00:12 ora_mmnl_bys1
oracle   21455     1  0 09:27 ?        00:00:01 ora_d000_bys1
oracle   21459     1  0 09:27 ?        00:00:01 ora_s000_bys1
oracle   21478     1  0 09:27 ?        00:00:02 ora_arc0_bys1
oracle   21482     1  0 09:27 ?        00:00:02 ora_arc1_bys1
oracle   21486     1  0 09:27 ?        00:00:01 ora_arc2_bys1
oracle   21490     1  0 09:27 ?        00:00:01 ora_arc3_bys1
oracle   21494     1  0 09:27 ?        00:00:01 ora_qmnc_bys1
oracle   21522     1  0 09:27 ?        00:00:10 ora_cjq0_bys1
oracle   21526     1  0 09:27 ?        00:02:16 ora_vkrm_bys1
oracle   21546     1  0 09:27 ?        00:00:01 ora_q000_bys1
oracle   21550     1  0 09:27 ?        00:00:02 ora_q001_bys1
oracle   21596     1  0 09:32 ?        00:00:03 ora_smco_bys1
oracle   26119     1  0 16:12 ?        00:00:00 ora_w000_bys1
oracle   26306     1  0 16:29 ?        00:00:00 ora_j000_bys1
oracle   26310     1  0 16:29 ?        00:00:00 ora_j001_bys1
WINDOWS下需要在数据库中查询:
SQL> select program from v$session where program like 'ORACLE.EXE%';
 
PROGRAM
----------------------------------------------------------------
ORACLE.EXE (PMON)
ORACLE.EXE (VKTM)
ORACLE.EXE (GEN0)
ORACLE.EXE (DIAG)
ORACLE.EXE (DBRM)
ORACLE.EXE (PSP0)
ORACLE.EXE (DIA0)
ORACLE.EXE (MMAN)
ORACLE.EXE (DBW0)
ORACLE.EXE (LGWR)
ORACLE.EXE (CKPT)
ORACLE.EXE (SMON)
ORACLE.EXE (RECO)
ORACLE.EXE (MMON)
ORACLE.EXE (MMNL)
ORACLE.EXE (Q000)
ORACLE.EXE (ARC0)
ORACLE.EXE (ARC1)
ORACLE.EXE (ARC2)
ORACLE.EXE (ARC3)
ORACLE.EXE (QMNC)
ORACLE.EXE (Q002)
ORACLE.EXE (SMCO)
ORACLE.EXE (CJQ0)
ORACLE.EXE (J001)
ORACLE.EXE (J000)
ORACLE.EXE (VKRM)
ORACLE.EXE (W000)
---------------------
作者:还不算晕
来源:CSDN
原文:https://blog.csdn.net/haibusuanyun/article/details/11329457
版权声明:本文为博主原创文章,转载请附上博文链接!

Oracle 全部后台进程简介的更多相关文章

  1. Oracle 数据库实例简介

      回到顶部 一:Oracle 数据库实例简介 1:数据库实例的启动顺序: 使用数据库其实就是访问内存.即:数据库实例.数据库的启动是顺序是 先 nomount ---->  mount --- ...

  2. 关于Oracle数据库后台进程

    为了最大限度地提高性能并适应许多用户,多进程Oracle数据库系统使用后台进程.后台进程将合并功能,否则这些功能将由运行于每个用户进程的多个数据库程序处理.后台进程异步执行I / O并监视其他Orac ...

  3. PLSQL连接ORACLE配置字符串简介 oracle网络配置 三个配置文件 listener.ora、sqlnet.ora、tnsnames.ora原理解释

    PLSQL连接ORACLE配置字符串简介 oracle网络配置 三个配置文件 listener.ora.sqlnet.ora.tnsnames.ora原理解释 oracle网络配置三个配置文件 lis ...

  4. oracle的后台进程能否杀掉

    oracle的后台进程杀掉会有什么影响 说明:本文复制自网友的博客: https://blog.csdn.net/kellyseeme/article/details/8927757 数据库版本为: ...

  5. oracle后台进程简介

    一:database write--数据写入  DBWR    作用:把SGA中被修改的数据同步到磁盘文件中.保证Buffer Cache中有足够的空闲数据块数量.    PS:如果LGWR出现故障, ...

  6. <Oracle Database>后台进程

    进程监视器进程(PMON)  这个进程负责在出现异常中止的连接之后完成清理.PMON会回滚未提交的工作,并释放为失败进程分配的SGA资源.PMON还负责监视其他的Oracle后台进程,并在必要时(如果 ...

  7. [RAC] oracle rac 后台进程

    一.RAC后台进程 LMON:LOCK Monitor Processes 也被称为Global enqueue service monitor 监控整个集群状况,维护GCS的内存结构 监控非正常终止 ...

  8. 【Oracle】OGG(Oracle GoldenGate)简介及搭建过程

    GoldenGate公司简介 GoldenGate公司专注于数据同步领域,是实现数据同步技术的领导者.至2007年,在全球35个国家售出超过2000个许可证,客户分布在政府.银行.电信.证券.传媒.医 ...

  9. oracle pl/sql简介、块、过程

    pl/sql语言是oracle在sql上扩展的语言.1 过程.函数.触发器是在pl/sql编写2 过程.函数.触发器是在oracle中3 pl/sql的语句可以在java中直接调用 简单介绍 在sql ...

随机推荐

  1. python — 线程

    目录 1.线程基础知识 2 Thread 类 3 锁 4 队列 1.线程基础知识 1.1 进程与线程的区别 进程: 创建进程 时间开销大 销毁进程 时间开销大 进程之间切换 时间开销大 线程: 线程是 ...

  2. 04 IO流(二)——IO类的记忆方法、使用场景

    关于IO流以前写的PPT式笔记请跳转:https://blog.csdn.net/SCORPICAT/article/details/87975094#262___1451 IO流的主要结构 记忆方法 ...

  3. 【HC89S003F4开发板】9ASM写定时器1

    HC89S003F4开发板ASM写定时器1 一.实现过程 1.外部寄存器设置 扩展 XSFR 采用和 XRAM 同样的访问方式,使用 MOVX A, @DPTR 和 MOVX @DPTR ,A 来进行 ...

  4. HTML5从入门到精通(千锋教育)免费电子版+PDF下载

    本书是HTML5初学者极好的入门教材之一,内容通俗易懂.由浅入深.循序渐进.本书内容覆盖全面.讲解详细,其中包括标签语义化.标签使用规范.选择器类型.盒模型.标签分类.样式重置.CSS优化.Photo ...

  5. Scratch编程:多彩的舞台(六)

    “ 上节课的内容全部掌握了吗?反复练习了没有,编程最好的学习方法就是练习.练习.再练习.一定要记得多动手.多动脑筋哦~~” 01 — 游戏介绍 这是一款简单的小游戏,实现了一个小女孩在多彩的舞台上进行 ...

  6. webpack资源加载常用配置

    const path = require('path'); module.exports = { entry: './src/index.js', output: { filename: 'bundl ...

  7. vue 分组左右选择

    <el-col :span="12"> <div style="text-align: left" class="transferd ...

  8. 前端编译原理 parser.js源码解读

    前面已经介绍了一个jison的使用,在正常开发中其实已经够用下,下面主要是看了下parser.js代码解读下,作为一些了解. 下面以最简单的文法产生的parser做一些代码注释 下面是一些注释,标示了 ...

  9. 【DRF框架】序列化组件

    DRF框架的序列化组件 在前后端分离的应用模式中,后端仅返回前端所需的数据,返回的数据类似是JSON,因此需要使用序列化组件进行序列化再将数据返回 使用JsonResponse做序列化 #  使用Js ...

  10. django(模版)

    官方文档:https://docs.djangoproject.com/en/1.11/ref/templates/language/ 常用语法 Django模板中只需要记两种特殊符号: {{  }} ...