当前位置:  数据库>oracle

Oracle clusterware 和 Oracle RAC 的主要部件

    来源: 互联网  发布时间:2017-04-04

    本文导语: 现在看相关的RAC结构的文章还不太理解。 现在看这个就很清楚其中的意思了。 Oracle clusterware 主要有以下主要部件: CSS: 集群同步服务 主要管理整个集群内各个节点间的情况,包括节点的添加和减少。与之对应的是ocssd 进程,...

现在看相关的RAC结构的文章还不太理解。

现在看这个就很清楚其中的意思了。

Oracle clusterware 主要有以下主要部件:
CSS: 集群同步服务
主要管理整个集群内各个节点间的情况,包括节点的添加和减少。与之对应的是ocssd 进程,如果改进程出现故障将会导致节点重启。如果使用了第三方的clusterware,css 通过第三方clusterware 管理节点间的信息。
关于是否使用第三方clusterware,css 的不同在init.crsd 中有如下定义:
# FAST_REBOOT - take out the machine now. We are concerned about
# data integrity since the other node has evicted us.
# SLOW_REBOOT - We can rely on vendor clusterware to delay sending
# the reconfig to the other node due to its IO fencing
# guarantees. So trigger its diagnostic reboot.







如果使用了第三方的clusterware,是否reboot的决定将交给它去决定。

CRS: 集群就绪服务
主要管理注册到cluster 中的资源(包括vip,instance,db,listener,service等),它会自动重启失败的资源,一般会自动重启5次,如果依然不能重启成功,将放弃重启。

EVM: 事件管理器
主要发布一些crs 产生的事件。

ONS: Oracle Notification Service
主要是接受evmd 和 racgimon 传来的events,并把它发布给local listener 和 application。
主要有两个目的:
a) 使得应用知道集群的状态的变化,并采取相应的措施。如Fast Connection Failover.
b) 用于实现Load balancing. rdbms 的mmon 进程每隔30s 对该节点的wordload 做一次记录,然后通过racgimon 和 ONS 传递给local listener 和 application。



OPROCD:
该进程时刻在内存中运行,监控cluster。如果该进程出现故障,将会重启改节点。

RAC 的主要部件:

相对于单节点的oracle database,rac database 主要是引入了cache fusion 机制,从而减少了磁盘io的次数。在了解rac特有的一些进程之前,先了解一些概念:

GRD:Global Resource Directory
存放在本地内存中,记录共享资源当前的状态。一般一个GRD包含如下内容:dba, location, mode(N, S, X),Role (local,global), PI,XI, scn 等。在一个远程节点提出访问一个数据块的请求之后,要通过访问grd来查看当前模式是否允许远程节点的相应的操作。

Resources Master:
在每次访问一个数据块的时候,都要先访问一次Resources Master(对于每个数据块,oracle 都会为之分配一个instance,作为这个数据块的RM), 然后,Resources Master 通知ges,ges将请求信息发送给gcs,然后访问grd,一切通过之后gcs从该块的holder instance 开始相应远程节点的请求。
在一下情况,RM的位置可能发生改变:
a) 当远程节点访问这个RM的次数大于RM所在节点的次数时,RM将迁移至远程节点
b) 当RM所在节点failed以后,本节点的RM要重新分配到其他存活的节点
c)当添加新的节点后,RM也要重新分配。
RM 的重新分配由进程LMON 负责。





RAC环境特有的若干进程:

LMS—Global Cache Service Process
传输一个本地的buffer cache 到远程的buffer cache,对于要求一致性读的请求,LMS会自动rollback一个数据块来相应一致性请求。根据LMS任务量的多少,每个实例改进程的数量可以从1增加到9.

LMD—Global Enqueue Service Daemon
负责管理远程节点向Resources Master 发出的请求。它发送请求信息到request enqueue, 然后有gcs 来处理enqueue 上面的请求。

LMON—Global Enqueue Service Monitor
负责RM的重新分配

LCK0—Instance Enqueue Process
主要负责那些non-cache fusion 的请求,如library cache 和 row cache 等。


    
 
 
 
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • Oracle 12c发布简单介绍及官方下载地址
  • 在linux下安装oracle,如何设置让oracle自动启动!也就是让oracle那个服务自动启动,不是手动的
  • oracle 11g最新版官方下载地址
  • 请问su oracle 和su - oracle有什么不同?
  • Oracle 数据库(oracle Database)Select 多表关联查询方式
  • 虚拟机装Oracle R12与Oracle10g
  • Oracle数据库(Oracle Database)体系结构及基本组成介绍
  • Oracle 数据库开发工具 Oracle SQL Developer
  • 如何设置让Oracle SQL Developer显示的时间包含时分秒
  • Oracle EBS R12 支持 Oracle Database 11g
  • Oracle 10g和Oracle 11g网格技术介绍
  • SCO unix下安装oracle,但没有光盘,请大家推荐一个oracle下载站点(unix版本的)。谢谢!!!!
  • oracle中如何把表中具有相同值列的多行数据合并成一行
  • 请问大家用oracle数据库, 用import oracle.*;下的东西么? 还是用标准库?
  • Oracle 数据库(oracle Database)性能调优技术详解
  • Linux /$ORACLE_HOME $ORACLE_HOME
  • ORACLE日期相关操作
  • Linux系统下Oracle的启动与Oracle监听的启动
  • ORACLE数据库常用字段数据类型介绍
  • 请问在solaris下安装ORACLE,用root用户和用oracle用户安装有什么区别么?
  • Oracle 12c的九大最新技术特性介绍
  • 网间Oracle的连接,远程连接Oracle服务器??


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3