热门标签 | HotTags
当前位置:  开发笔记 > 数据库 > 正文

oracle各后台进程介绍

后台进程用来执行保证数据库运行所需的实际维护任务。如:某个后台进程维护缓冲区缓存,根据需要将块写出到数据文件.另个进程负责在线重做日志文件写满时将它自己复制到一个归档目标.可以通过查询v$bgprocess视图看服务器当前后台进程SQLselectpaddr,nam

后台进程用来执行保证数据库运行所需的实际维护任务。如:某个后台进程维护缓冲区缓存,根据需要将块写出到数据文件. 另个进程负责在线重做日志文件写满时将它自己复制到一个归档目标. 可以通过查询v$bgprocess视图看服务器当前后台进程 SQL select paddr,nam

  后台进程用来执行保证数据库运行所需的实际维护任务。如:某个后台进程维护缓冲区缓存,根据需要将块写出到数据文件.

  另个进程负责在线重做日志文件写满时将它自己复制到一个归档目标.

  可以通过查询v$bgprocess视图看服务器当前后台进程

  SQL> select paddr,name,description from v$bgprocess where paddr!='00';

  PADDR NAME DESCRIPTION

  ---------------- ----- ----------------------------------------------------------------

  00000001EB1F5920 PMON process cleanup

  00000001EC226B30 VKTM Virtual Keeper of TiMe process

  00000001EB1F69A0 GEN0 generic0

  00000001F0269448 DIAG diagnosibility process

  00000001EC227BB0 DBRM DataBase Resource Manager

  00000001EB2137A0 VKRM Virtual sKeduler for Resource Manager

  00000001F02683C8 PSP0 process spawner 0

  00000001EB1F7A20 DIA0 diagnosibility process 0

  00000001F026A4C8 MMAN Memory Manager

  00000001EC228C30 DBW0 db writer process 0

  00000001EB1F8AA0 DBW1 db writer process 1

  00000001EB1FFE20 ARC0 Archival Process 0

  00000001F02728C8 ARC1 Archival Process 1

  00000001EC231030 ARC2 Archival Process 2

  00000001EB200EA0 ARC3 Archival Process 3

  00000001F026B548 LGWR Redo etc.

  00000001EC229CB0 CKPT checkpoint

  00000001EB1F9B20 SMON System Monitor Process

  00000001EB1FCCA0 SMCO Space Manager Process

  00000001F026C5C8 RECO distributed recovery

  PADDR NAME DESCRIPTION

  ---------------- ----- ----------------------------------------------------------------

  00000001EB201F20 CJQ0 Job Queue Coordinator

  00000001F0273948 QMNC AQ Coordinator

  00000001EC22AD30 MMON Manageability Monitor Process

  00000001EB1FABA0 MMNL Manageability Monitor Process 2

  根据版本的不同,后台进程数、名称、类型等都可能不同.

  中心后台进程:

  PMON(进程监视器):负责在出现异常中止的连接后完成清理.PMON还会向oracle TNS监听器注册通信,向它传递相关的参数.

  SMON(系统监视器):完成所有的系统级任务.包括以下内容:

  清理临时空间,合并空闲空间,针对原来不可用的文件恢复活动的事务,执行RAC中失败节点的实例恢复,清理OBJ$,收缩回滚段,‘离线’回滚段.

  RECO(分布式数据库恢复):基于2PC分布式协议,允许多个不同的修改实现原子提交,但是在真正提交前,出现网络失败等错误,事务成为一个可疑的分布式事务.此时

  就需要RECO来负责联系事务协调器来发现协调的结果。在这之前事务会保持未提交状态.当恢复网络或者错误解决后,RECO可能会提交事务,也可能将事务回滚.

  注:可疑分布式事务会导致写阻塞读的情况,即可疑分布式事务不能存在太长时间,DBA可自行手动提交或回滚.

  CKPT(检查点进程):建立检查点主要是DBWn的任务.CKPT主要是更新数据文件的文件首部,从而辅助真正的建立检查点的进程.

  DBWn(数据库块写入器):负责将脏块(修改过的块)写入磁盘的后台进程,它会写出缓冲区缓存的脏块,,从而释放相应的空间.可以配置多个DBWn(上面有2个DBW0和DBW1),

  最好的情况是DBWn使用异步I/O将块写入磁盘.采用异步I/O,DBWn会收集要写入的块,交给操作系统,然后立即返回,并收集下一批要写的块,操作系统完成写文件操作之后,它会异步地通知DBWn.

  LGWR(日志写入器):它负责将SGA中重做日志缓冲区的内容刷新输出到磁盘.一般在下面几个情况时候,LGWR就会执行刷新操作:

  1.每隔3秒会自动刷新一次

  2.任何事务发出一个提交时

  3.重做日志缓冲区1/3满,或者包含1MB的缓冲数据的时候.

  ARCn(归档进程):当LGWR将在线重做日志写满时,归档进程就将其复制到另一个位置.ARCn一般将在线重做日志至少复制到两个位置.一般用于硬盘等介质损坏时数据库的恢复.

  DIAG(诊断性进程):它会负责监视实例的整体状况,捕获处理实例失败时所需的信息并记录.

  FBDA(闪回数据归档进程):此进程为oracle 11g r1版本新增进程.主要用于闪回数据,它主要维护随时间对表中每行所做的改变,而实现历史数据查询.它将读取事务生成的UNDO,并回滚事务做出的改变,然后将回滚的这些行记录保存在闪回数据归档中.

  DBRM(数据库资源管理器进程):为数据库实例配置资源计划.

  GEN0(通用任务执行进程):主要是分担另外某个进程的阻塞处理。

  可选后台进程:

  ASMB(自动存储管理后台):该进程出现在ASM的数据库实例中.它负责与管理存储的ASM实例通信,向ASM实例提供更新的统计信息,并向ASM实例提供一个"心跳".

  RBAL(重新平衡进程):该进程也在使用了ASM的数据库实例中运行,向ASM磁盘组增加或去除磁盘时,它负责处理平衡请求,也就是重新分布负载请求.

  RAC环境后台进程:

  LMON(锁监视器):监视集群中的所有实例,检测实例是否有失败.在实例离开或重新加入集群时重新配置锁和其他资源。

  LMD(锁管理器守护进程):它为全局缓存服务(保持块缓冲区在实例间一致)处理锁管理器服务请求.

  LMSn(锁管理器服务器进程):主要维持SGA块缓冲区缓存在各个RAC实例间相互保持一致.

  LOCK(锁进程):与LMD相似,但它处理所有全局资源的请求.

  工具后台进程

  CJQO和Jnnn(作业队列进程):oracle通过一种称为快照的数据库对象来提供复制特性,作业队列就是刷新快照时使用的内部机制.

  QMNC和Qnnn(高级队列进程):QMNC会监视高级队列.并告诉从队列中删除等待消息的"出队进程":已经有一个消息变为可用.它们还要负责队列传播.

  EMNC(事件监视器进程):它是AQ体系结构中的一部分,用于通知对某些消息感兴趣的队列.

  DMnn和DWnn(数据泵主进程/工作进程):数据泵是oracle 10g r1中新增的特性,主要用来替代EXP/IMP。

  其他后台进程

  PSPO(进程生成器进程):它主要负责生成各个后台进程.

  VKTM(虚拟时间管理器进程):为oracle实例实现一个一致的、细粒度的时钟.

  SMCO(空间管理协调器进程):协调数据库的主动空间管理。

推荐阅读
  • 探讨如何真正掌握Java EE,包括所需技能、工具和实践经验。资深软件教学总监李刚分享了对毕业生简历中常见问题的看法,并提供了详尽的标准。 ... [详细]
  • MySQL缓存机制深度解析
    本文详细探讨了MySQL的缓存机制,包括主从复制、读写分离以及缓存同步策略等内容。通过理解这些概念和技术,读者可以更好地优化数据库性能。 ... [详细]
  • Windows服务与数据库交互问题解析
    本文探讨了在Windows 10(64位)环境下开发的Windows服务,旨在定期向本地MS SQL Server (v.11)插入记录。尽管服务已成功安装并运行,但记录并未正确插入。我们将详细分析可能的原因及解决方案。 ... [详细]
  • 1:有如下一段程序:packagea.b.c;publicclassTest{privatestaticinti0;publicintgetNext(){return ... [详细]
  • 深入理解 SQL 视图、存储过程与事务
    本文详细介绍了SQL中的视图、存储过程和事务的概念及应用。视图为用户提供了一种灵活的数据查询方式,存储过程则封装了复杂的SQL逻辑,而事务确保了数据库操作的完整性和一致性。 ... [详细]
  • 数据库内核开发入门 | 搭建研发环境的初步指南
    本课程将带你从零开始,逐步掌握数据库内核开发的基础知识和实践技能,重点介绍如何搭建OceanBase的开发环境。 ... [详细]
  • 网络运维工程师负责确保企业IT基础设施的稳定运行,保障业务连续性和数据安全。他们需要具备多种技能,包括搭建和维护网络环境、监控系统性能、处理突发事件等。本文将探讨网络运维工程师的职业前景及其平均薪酬水平。 ... [详细]
  • MySQL 数据库迁移指南:从本地到远程及磁盘间迁移
    本文详细介绍了如何在不同场景下进行 MySQL 数据库的迁移,包括从一个硬盘迁移到另一个硬盘、从一台计算机迁移到另一台计算机,以及解决迁移过程中可能遇到的问题。 ... [详细]
  • Hadoop入门与核心组件详解
    本文详细介绍了Hadoop的基础知识及其核心组件,包括HDFS、MapReduce和YARN。通过本文,读者可以全面了解Hadoop的生态系统及应用场景。 ... [详细]
  • 本文探讨了MariaDB在当前数据库市场中的地位和挑战,分析其可能面临的困境,并提出了对未来发展的几点看法。 ... [详细]
  • 随着网络安全威胁的不断演变,电子邮件系统成为攻击者频繁利用的目标。本文详细探讨了电子邮件系统中的常见漏洞及其潜在风险,并提供了专业的防护建议。 ... [详细]
  • 探讨架构师在项目中应如何平衡对产品的关注和对团队成员的关注,以实现最佳的开发成果。 ... [详细]
  • 本文探讨了如何在日常工作中通过优化效率和深入研究核心技术,将技术和知识转化为实际收益。文章结合个人经验,分享了提高工作效率、掌握高价值技能以及选择合适工作环境的方法,帮助读者更好地实现技术变现。 ... [详细]
  • 深入理解一致性哈希算法及其应用
    本文详细介绍了分布式系统中的一致性哈希算法,探讨其原理、优势及应用场景,帮助读者全面掌握这一关键技术。 ... [详细]
  • 本文探讨了2012年4月期间,淘宝在技术架构上的关键数据和发展历程。涵盖了从早期PHP到Java的转型,以及在分布式计算、存储和网络流量管理方面的创新。 ... [详细]
author-avatar
郑geraghty_926
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有