ITPub博客

首页 > Linux操作系统 > Linux操作系统 > ORACLE RAC原理

ORACLE RAC原理

原创 Linux操作系统 作者:junnylove 时间:2009-06-23 15:19:14 0 删除 编辑

在一个应用环境当中,所有的服务器使用和管理同一个数据库,目的是为了分散每一台服务器的工作量,硬件上至少需要两台以上的服务器,而且还需要一个共享存储设备。同时还需要两类软件,一个是集群软件,另外一个就是Oracle数据库中的RAC组件。同时所有服务器上的OS都应该是同一类OS,根据负载均衡的配置策略,当一个客户端发送请求到某一台服务的listener后,这台服务器根据我们的负载均衡策略,会把请求发送给本机的RAC组件处理也可能会发送给另外一台服务器的RAC组件处理,处理完请求后,RAC会通过集群软件来访问我们的共享存储设备.
S0t-t2NDIoJ*jn8~8404772逻辑结构上看,每一个参加集群的节点有一个独立的instance,这些instance访问同一个数据库。节点之间通过集群软件的通讯层(communication layer)来进行通讯。同时为了减少IO的消耗,存在了一个全局缓存服务,因此每一个数据库的instance,都保留了一份相同的数据库cacheI

RAC中的特点是:ITPUB个人空间7}-N M2z8G#z
每一个节点的instance都有自己的SGAITPUB个人空间gL&]'P4a
每一个节点的instance都有自己的background processITPUB个人空间;|}F bO yT
每一个节点的instance都有自己的redo logs
z:? v-jK[3d8404772每一个节点的instance都有自己的undo表空间
RgM Q1f7H8404772所有节点都共享一份datafiles和controlfiles

还提出了一个缓存融合的技术(Cache fusion)
_$e6E G4Dl'L:\V w KP8404772目的有两个
2X6[qBO~jY-\(^|840477201.保证缓存的一致性
#MX,NF NH4v840477202.减少共享磁盘IO的消耗
2bQ2W5c^k pt]8404772因此在RAC环境中多个节点保留了同一份的DB CACHE

缓存融合(Cache fusion)工作原理:
{ sxV!X#}#O9H$~|6Q5j8404772****************************************ITPUB个人空间h!T*pE3Kz
01.其中一个节点会从共享数据库中读取一个block到db cache中ITPUB个人空间Q"FM)|&l
02.这个节点会在所有的节点进行交叉db block copy
q,K.@r `y(D0Zl840477203.当任何一个节点缓存被修改的时候,就会在节点之间进行缓存修改ITPUB个人空间"d+L RH` {
04.为了达到存储的一致最终修改的结果也会写到磁盘上
d~l?i8404772ClusterWare组件
YmO \*L%L l hz8404772*******************
@ Gv0m$c O8404772四种ServiceITPUB个人空间oL eA0k%N
Crsd - 集群资源服务ITPUB个人空间%SE G2P`
Cssd - 集群同步服务
UL?j-_"SH;TI(y&i8404772Evmd - 事件管理服务
E1E?I dN`z6R8404772oprocd - 节点检测监控

三类ResourceITPUB个人空间b Z E)Ur6`
VIP - 虚拟IP地址(Virtual IP)
O;^ P.U*OZxj8404772OCR - Oracle Cluster Registry(集群注册文件),记录每个节点的相关信息ITPUB个人空间c9k}U^6MOS
Voting Disk - Establishes quorum (表决磁盘),仲裁机制用于仲裁多个节点向共享节点同时写的行为,这样做是为了避免发生冲突。

RAC的组件
A%j_^(l~8404772************
B9j7J0?o8404772提供过了额外的进程,用来维护数据库ITPUB个人空间y4Z"Tm5k
LMS - Gobal Cache Service Process 全局缓存服务进程ITPUB个人空间fA_,[N
LMD - Global Enqueue Service Daemon 全局查询服务守护进程
Lx HXu V WG8404772LMON - Global Enqueue Service Monitor全局查询服务监视进程
R9n8QQ.`wk8404772LCK0 - Instance Enqueue Process 实例查询进程

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/8404772/viewspace-607274/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2009-06-22

  • 博文量
    36
  • 访问量
    100138