[RAC] oracle rac 后台进程


一、RAC后台进程

LMON:LOCK Monitor Processes 也被称为Global enqueue service monitor

监控整个集群状况,维护GCS的内存结构 监控非正常终止的进程和实例 当实例离开和加入集群时,锁和资源的重新配置 管理全局的锁和资源 监控全局的锁资源、处理死锁和阻塞

LCK:Lock Process

LCK进程主要用来管理实例间资源请求和跨实例调用操作,调用操作包括数据字典等对像访问,并处理非

CACEH FUSION的CHACE资源请求,(例如dictionary cache或row  cache的请求)   由于LMS进程负责主要的锁管理功能,所以每个实例只有一个LCK进程

LMD:Lock  Monitor Deamon Process

LMD进程主要管理对全局队列和资源的访问,并更新相应队列状态,处理来自于其它实例的资源请,每一个全局队列的当前状态存储在相应的实例共享内存中,该状态表明该实例具有相应的权利使用该资源,一个实例master的共享内存中存在一个特殊的队列,该队列记录来自其它远程实例的资源请求,当远程实例的LMD进程发出一个资源请求时,该请求指向master实例的LMD,当master实例的LMD进程受到该请求后,在共享内存中的特殊队列中监测该资源是否有无效,如果有效LMD进程更新该资源对列的状态,并通知请求资源的LMD进程该资源队列可以使用了,如果资源队列正被其它实例使用或当前无效,则LMD进程通知正在使用中的实例的LMD进程应用释放该资源,等资源释放变得有效时,master实例的LMD进程更新该资源队列的状态,并通知请求资源实例的LMD进程,该资源队列可以使用了

全局队列服务(GES):主要负责维护字典缓存和库缓存内的一致性。字典缓存是实例的 SGA 内所存储的对数据字典信息的缓存,用于高速访问。由于该字典信息存储在内存中,因而在某个节点上对字典进行的修改(如DDL)必须立即被传播至所有节点上的字典缓存。GES 负责处理上述情况,并消除实例间出现的差异。出于同样的原因,为了分析影响这些对象的 SQL 语句,数据库内对象上的库缓存锁会被去掉。这些锁必须在实例间进行维护,而全局队列服务必须确保请求访问相同对象的多个实例间不会出现死锁。LMON、LCK 和 LMD 进程联合工作来实现全局队列服务的功能。GES 是除了数据块本身的维护和管理(由 GCS 完成)之外,在 RAC 环境中调节节点间其他资源的重要服务。

LMSn:Lock Monitor Services也称作GCS(Global Cache Services)processes

LMS进程主要用来管理集群内数据库的访问,并在不同实例的buffer cache中传输块镜像,当在某个数据块上

发生一致性读时,LMS负责回滚该数据块,并将它copy到请求的实例上 每个RAC节点至少有2个LMS进程

全局缓存服务(GCS):要和 Cache Fusion 结合在一起来理解,全局缓存要涉及到数据块。全局缓存服务负责维护该全局缓冲存储区内的缓存一致性,确保一个实例在任何时刻想修改一个数据块时,都可获得一个全局锁资源,从而避免另一个实例同时修改该块的可能性。进行修改的实例将拥有块的当前版本(包括已提交的和未提交的事物)以及块的前象(post image)。如果另一个实例也请求该块,那么全局缓存服务要负责跟踪拥有该块的实例、拥有块的版本是什么,以及块处于何种模式。LMS 进程是全局缓存服务的关键组成部分。

DIAG:Diagnostic Deamon

oracle10g新的后台进程 例行对实例的健康情况进行监控,同时也监控实例是否挂起或者出现死锁 收集实例和进程出错时的关键诊断信息 这个进程会更新alert日志文件,写入一些重要告警信息

二、RAC服务进程

CRS-集群资源服务(cluster ready services)

管理集群内高可用操作的基本程序 CRS管理的任何事务被称之为资源 数据库、实例、监听、虚拟IP、应用进程等等 CRS是跟据存储于OCR中的资源配置信息来管理这些资源 当一资源的状态改变时,CRS进程生成一个事件,操作包括启动、关闭、监控及故障切换,该进程由 root 用户管理和启动,CRSD如果有故障会导致系统重启

CSS-集群同步服务(Cluster Synchronization Service)

管理集群节点的成员资格 控制哪 个结点为集群的成员、节点在加入或离开集群时通知集群成员来控制集群配置信息,此进程发生故障导致集群重启,提供心跳机制监控集群状态(DISK HEARTBEAT 和 NETWORK HEARBEAT),该进程由 oracle 用户运行管理

EVMD事件管理服务(Event Management)

事件管理守护进程 发布CRS创建事件的后台进程

ONS-事件的发布及订阅服务(Oracle Notification Service)

通信的快速应用通知事件的发布及订阅服务

OCR- Oracle Cluster Register

集群注册文件,记录每个节点的相关信息 保存RAC集群的各种资源信息 类似于windows注册表 存储于共享磁盘上,所有实例共享 默认有2个互备磁盘

Voting Disk 表决磁盘

仲裁机制用于仲裁多个节点向共享节点财时写的行为,避免发生冲突 存储于共享磁盘上,所有实例共享 用于确定各个实例的关系 当有节点失效时,通过voting disk来决定驱逐哪个实例 默认有3个互备磁盘

OPROCD(Process Monitor Daemon)检测 CPU hang(非 Linux 平台使用),集群进程管理 —Process monitor for the cluster. 用于保护共享数据 IO fencing

根据http://blog.sina.com.cn/s/blog_61cd89f60102ef28.html进行整理

时间: 2024-10-08 09:00:16

[RAC] oracle rac 后台进程的相关文章

深入理解Oracle RAC 12c

深入理解Oracle RAC 12c(顶尖专家权威指南唯一最新版数据库著作 Oracle第一社区技术大牛翻译 Amazon五星推荐) [美]Syed Jaffar Hussain(赛义德 贾法尔 侯赛因),Tariq Farooq(塔里克 法鲁克),Riyaj Shamsudeen(瑞亚吉沙姆斯丁),Kai Yu(于凯) 著   赵燚 梁涛 程飞 李真旭 译 ISBN 978-7-121-24066-9 2014年10月出版 定价:99.00元 488页 16开 编辑推荐 <深入理解 Oracl

Oracle RAC(Real Application Clusters)

Oracle RAC 运行于集群之上,为 Oracle 数据库提供了最高级别的可用性.可伸缩性和低成本计算能力.如果集群内的一个节点发生故障,Oracle 将可以继续在其余的节点上运行.Oracle 的主要创新是一项称为高速缓存合并的技术.高速缓存合并使得集群中的节点可以通过高速集群互联高效地同步其内存高速缓存,从而最大限度地低降低磁盘 I/O.高速缓存最重要的优势在于它能够使集群中所有节点的磁盘共享对所有数据的访问,数据无需在节点间进行分区.Oracle 是唯一提供具备这一能力的开放系统数据库

HP-UX oracle RAC 双机实践 (转载)

一.软硬件配置检查 1.检查内存#/usr/contrib/bin/machinfoCPU info:  4 Intel(R) Itanium 2 9100 series processors (1.59 GHz, 18 MB)          532 MT/s bus, CPU version A1          8 logical processors (2 per socket) Memory: 32737 MB (31.97 GB) Firmware info:   Firmwar

oracle rac IP详解

rac环境下vip/public/private IP的区别 每个节点要2块网卡, 3个IP,虚拟IP或者叫做业务IP,单个网卡当掉可以"漂"到其他网卡是继续提供服务 在Oracle RAC环境下,每个节点都会有多个IP地址,分别为Public/Private/Vip,这三个IP到底有啥区别呢?分别用在那些场合呢?来看看老外的回答. 1. private IP address is used only for internal clustering processing (Cache

Oracle RAC 并发与架构

10g RAC进程总概 一. RAC 并发 RAC 的本质是一个数据库,运行在多台计算机上的数据库,它的主要任务是数据库就是事务处理,它通过 Distributed Lock Management(DLM:分布式锁管理器) 来解决并发问题.因为RAC的资源是共享的,为了保证数据的一致性,就需要使用DLM来协调实例间对资源的竞争访问.RAC 的DLM 就叫作 Cache Fusion. 在DLM 中,根据资源数量,活动密集程度,把资源分成两类:Cache Fusion和Non-Cache Fusi

Oracle RAC学习笔记:基本概念及入门

2010年04月19日 10:39 来源:书童的博客 作者:书童 编辑:晓熊 [技术开发 技术文章]    oracle 10g real application clusters introduction     1.什么是cluster     一个cluster是由两个或是多个独立的.通过网络连接的servers组成的.几个硬件供应商多年以来提供了Cluster性能的各种需求.一些Clusters仅仅为了提供高可用性的,在当前活动的node发生故障时转移到次节点node.另一些是为了提供分

Oracle RAC集群体系结构

一. Oracle集群体系结构 Oracle RAC,全称是Oracle Real Application Cluster,即真正的应用集群,是oracle提供的一个并行集群系统,整个集群系统由Oracle Clusterware (集群就绪软件)和 Real Application Clusters(RAC)两大部分组成. oracle RAC的实质是位于不同操作系统的Oracle实例节点同时访问同一个Oracle数据库,每个节点间通过私有网络进行通信,互相监控节点的运行状态,oracle数据

Oracle RAC 基本概念及入门

1.什么是cluster 一个cluster是由两个或是多个独立的.通过网络连接的servers组成的.几个硬件供应商多年以来提供了Cluster性能的各种需求.一些Clusters仅仅为了提供高可用性的,在当前活动的node发生故障时转移到次节点node.另一些是为了提供分布式的连接.工作的可扩展性.另一个Cluster的共同特点是,对于一个应用程序,它可以看做是一个单独的server.同样,管理几个servers应该尽可能像管理一个server一样简单.Cluster管理器软件提供了这种功能

Oracle RAC 全局等待事件 gc current block busy 和 gc cr multi block request 说明--转载(http://blog.csdn.net/tianlesoftware/article/details/7777511)

一.RAC 全局等待事件说明 在RAC环境中,和全局调整缓存相关的最常见的等待事件是global cache cr request,global cache busy和equeue. 当一个进程访问需要一个或者多个块时,Oracle会首先检查自己的Cache是否存在该块,如果发现没有,就会先通过global cache赋予这些块共享访问的权限,然后再访问.假如,通过global cache发现这些块已经在另一个实例的Cache里面,那么这些块就会通过Cache Fusion,在节点之间直接传递,