【RAC】RAC相关基础知识

 

RACRAC相关基础知识




1.CRS简介

   Oracle 10G开始oracle引进一套完整的集群管理解决方案—-Cluster-Ready Services它包括集群连通性.消息和锁.负载管理等框架.从而使得RAC可以脱离第三方集群件当然CRS与第三方集群件可以共同使用.

(1).CRS进程

CRS主要由三部分组成,三部分都作为守护进程出现

<1>CRSD:资源可用性维护的主要引擎.它用来执行高可用性恢复及管理操作,诸如维护OCR及管理应用资源,它保存着集群的信息状态和OCR的配置,此进程以root权限运行.

<2>EVMD:事件管理守护进程.此进程还负责启动racgevt进程以管理FAN服务器端调用,此进程以root权限运行

<3>OCSSD:集群同步服务进程.管理集群节点的成员资格,它以fatal方式启动,因此进程发生故障将导致集群重启,以防止数据坏死.同时,CSS还维护集群内的基本锁功能,以及负责监控voting disk的脑裂故障。它以Oracle权限运行

此外,还有一个进程OPRCD,他是集群中的进程监视程序,仅当平台上的CRS不使用厂商群件时候才出现,且无论运行了多少实例,每个节点只会存在一组后台进程.

来看一下这几个守护进程: 

rac1-> cat/etc/inittab

…………………………….

# Run xdm in runlevel 5

x:5:respawn:/etc/X11/prefdm –nodaemon

h1:35:respawn:/etc/init.d/init.evmd run >/dev/null 2>&1 </dev/null

h2:35:respawn:/etc/init.d/init.cssd fatal >/dev/null 2>&1 </dev/null

h3:35:respawn:/etc/init.d/init.crsd run >/dev/null 2>&1 </dev/null

 

  (2).Virtual IP Address

Oracle 10G RAC下,有3个重要的IP.

① Public IP  ② Private IP  ③ Vitual IP

Public IP为数据库所在主机的公共网络IP,Private IP被用来私有高速互联,而Oracle较前版本,增加了一个虚拟IP,用来节点发生故障时候更快的故障转移,oracle利用每个节点的lisnter侦听VIP,一旦发生故障,VIP将进行实际的故障切换,从而在其他的可用的节点上保持联机,从而降低客户应用程序意识到节点故障所需要的时间。

VIP与Public IP必须在同一个网段内。

(3).OCR,Voting disk
      OCR(oracle集群注册表)和Voting disk(表决磁盘)是CRS下的两个重要组件,它们必须放在共享磁盘上,以保证每个节点都能对其访问。

OCR包含了针对集群的一些配置信息,诸如:集群数据库中的节点列表.CRS应用程序.资源文件以及事件管理器的授权信息。他负责对集群内的资源追踪,从而获知资源正在哪里运行,应该可以在哪里运行。

Voting disk用来解决split-brain故障:如果节点丢失了与集群中其他节点的网络连接,这些冲突由表决磁盘中的信息来解决

2.ASM相关 

ASM (Automated Storage Management) 是Oracle 10G引入的一种文件类型,他提供了直接的I/O读写,是RAC体系下一套不错的对数据文件存储规划的方案. ASM可以自动管理磁盘组,并提供数据冗余和优化.后面章节会就ASM的管理以及ASM下的RAC管理,单独讲解.

3.RAC存储/网络需求

wps226C.tmp 

(1).存储需求

共享存储器是RAC的重要组件之一。它要求集群内的节点可以同时读写物理磁盘。目前,支持共享存储的文件类型也比较多,像Oracle自身提供的ASM,OCFS2以及三方提供的群集文件系统,都是可以选择的类型。

1.1.1显示了RAC 体系架构下各部分所支持的存储类型 (暂不考虑三方集群文件系统,就ASM/raw device/OCFS2和普通文件系统来说)

1.1.1  RAC各部分所支持的存储类型

   类别

   支持的存储类型

 存储位置

  备注

Cluster 软件

OCFS2,普通文件系统

共享磁盘/本地磁盘

 

OCRVoting disk

OCFS2raw device

共享磁盘

 

数据库软件

OCFS2,普通文件系统

共享磁盘/本地磁盘

 

数据库文件

OCFS2raw deviceASM

共享磁盘

 

归档日志文件

OCFS2ASM,普通文件系统

共享磁盘/本地磁盘

 

备份/恢复文件

OCFS2ASM,普通文件系统

共享磁盘/本地磁盘

 

闪回日志文件

OCFS2ASM

共享磁盘

 

(2).网络需求

  每个节点主机上至少需要2张物理网卡,以便分配公有IP和私有IP地址。对于私有IP连接,每个集群节点通过专用高速网络连接到所有其他节点,目的在于集群上的节点和实例交换信息状态(锁信息,全局缓存信息等)。通过高速互联,Cache Fusion得以实现。

  在实际环境中,高速互联至少需要配置GB级的以太网,而且,最好不要使用交叉直连。

较好的解决方案是节点间配置专用交换机,这样避免因为集群上一个节点宕掉而影响另外节点的正常工作。

4.其他

(1).后台进程

wps226D.tmp 

1.4.1 Backgroud Process in RAC 10g

      由于要维护多个实例同时访问资源所必需的锁定,因此,同single instance相比,RAC下增加了额外的一些进程。专门针对RAC的进程有如下几种:

1.  LMS(Global Cache Service)  全局缓存服务进程

     LMS负责为缓存融合请求在实例间传递块。当一致性请求的时候,LMS首先回滚块,创建块的读一致性映像(CR),然后将该一致性版本通过高速互联传递到处理此请求的远程实例中的前台进程上,LMS进程保证了在同一时刻只允许一个实例去更新数据块。

     LMS进程的数量由初始化参数GCS_SERVER_PROCESSES控制。Oracle最大支持36LMS进程(09 and az),该初始化参数默认值为2

2.  LMD (Global Enqueue Service Daemon) 全局队列服务守护进程

     LMD负责管理全局队列和全局资源访问,并更新相应队列的状态,此外还负责远程节点资源的请求与死锁的检测。LMDLMS进程互交工作,共同维护GRD

3.  LMON (Global Enqueue Service Monitor) 全局队列服务监控器进程

     LMON是全局队列服务的监控器,他负责检查集群内实例的死亡情况并发起重新配置,当实例加入或者离开集群的时候,它负责重新配置锁和资源。

4.  LCK(Lock process) 锁进程

     LCK管理那些不是缓存融合的请求,例如library cahe, row cache.由于LMS进程提供了主要的锁管理功能,因此每个节点实例上只有一个LCK进程。

DIAG (The Diagnostic Daemon)诊断守护进程

     DIAG负责监控实例的健康状况并捕获进程失败的信息,并将失败信息写入用于失败分析,该进程自动启动且不需要人为调整,若失败则自动重新启动。

(2).缓存融合/缓存一致性

      Cache Fusion是RAC工作原理的一个中心环节.他的本质就是通过互联网络在集群内各节点的SGA之间进行块传递,从而避免了首先将块推送到磁盘,然后再重新读入其他实例的缓存中,从而最大限度的减少I/O。当一个块被读入RAC环境中某个实例的缓存时,该块会被赋予一个锁资源(与行级锁不同),以确保其他实例知道该块正在被使用。之后,如果另一个实例请求该块的一个拷贝,而该块已经处于前一个实例的缓存内,那么该块会通过互联网络直接被传递到另一个实例的SGA。如果内存中的块已经被改变,但改变尚未提交,那么将会传递一个CR副本。这就意味着,只要可能,数据块无需写回磁盘即可在各实例缓存之间移动,从而避免了同步多实例的缓存所花费的额外I/O,由此,需要互联网络的速度是高速的,需要快于磁盘访问的速度.

      GCS负责维护全局缓冲区内的缓存一致性,LMS进程是其主要组成部分。GCS确保同一时刻某个块上,只能有来自一个实例上的进程能对其修改,同时,并获得该块的当前版本和前映像,以及块所处的状态(NULL,,Shared, Exclusive),模式(local/gobal)

     GES负责维护dictionary cachelibrary cache缓存一致性(这个与LCK是不同的)。由于存在某个节点上对数据字典的修改(比如ddldclobject属性的修改)GES负责同步各节点上的字典缓存,消除差异。GES确保请求访问相同对象的多个实例间不会出现死锁。

     GRD包含了所有共享资源的当前状态信息,它由GESGCS共同维护,GRD贮存在内存中,被用来管理全局资源活动。比如:当一个实例第一次读取某块到SGA的时候,该块的角色为LOCALGCS记录此状态到GRD,一旦有另外的实例请求该块,GCS会更新GRD,将此块的角色由LOCAL变为GLOBAL

RAC安装

不用把安装RAC看成是多么困难的一件事情.足够细心和耐性,充分的准备工作,然后加上一丁点运气,相信你能很快部署好一个RAC测试环境.当然,虚拟环境和实际环境的安装不尽相同,而且,生产系统环境的搭建需要经过缜密的规划和系统的测试.但大同小异,安装过程不该称为我们的绊脚石.

1.安装规划部署

安装之前需重点规划RAC系统各文件的存储类型.可以参见表1.3.1。一个好的存储规划方案,可以省去很多后续的维护成本。

2. 安装过程

安装过程可以参考oracle联机文档install guid。(Vmware安装可以参考Vincent Chan发表在oracle网站上的一文<使用 VMware Server 在 Oracle Enterprise Linux 上安装 Oracle RAC 10g>.文中讲的很详细,在此简单带过.)。简单列一下安装RAC的几个重要步骤

配置系统内核参数以及环境

配置共享存储

安装CRS软件

安装RDBMS软件

创建数据库以及配置其他

3.几点注意问题.

特别提一下vmware下的时间同步问题,在我的环境下,两节点上时间差别很大.一开始采用vmware-toolbox工具同步宿主时间,效果不理想.可以在每个节点上放置一个小脚本,让他每隔一段时间以另一个节点为基准同步时间.这样,时间同步问题迎刃而解.在我的环境下,我设置每20秒同步一次时间.

rac1>cat date.sh

#!/bin/sh

while true

do

rdate -s rac2>dev/null 2>&1

sleep 10

done

RAC管理维护

Single instance相比,RAC的管理维护要复杂一些。10g给我们提供了一个强大的EM管理工具,将很多管理维护工作简单和界面化。我们也应当习惯使用EM来高效的完成更多的工作。本文以下部分,将暂不讨论EM方面的管理,着重于命令行方式。

1.CRS管理维护

(1).CRS相关的接口命令

CRS在10G RAC体系下有着举足轻重的作用。Oracle也提供了一些命令接口让我们诊断维护它。

<1>CRS_*

10G RAC下,有这么几组crs_命令维护CRS资源。

 

[root@rac2 bin]# ls $ORA_CRS_HOME/bin|grep "crs_"|grep -v bin
crs_getperm  crs_profile  crs_register  crs_relocate  crs_setperm  crs_start  crs_stat  crs_stop  crs_unregister

下面分别讲述一下它们。

集群资源查询:CRS_STAT

可以用来查看RAC中各节点上resources的运行状况,Resources的属性等。

例如使用-t选项,检查资源状态:

[root@rac1 ~]# crs_stat –t

Name Type Target State Host

ora.demo.db application ONLINE ONLINE rac2

ora....o1.inst application ONLINE ONLINE rac1

ora....o2.inst application ONLINE ONLINE rac2

ora....SM1.asm application ONLINE ONLINE rac1

ora....C1.lsnr application ONLINE ONLINE rac1
ora.rac1.gsd application ONLINE ONLINE rac1

ora.rac1.ons application ONLINE ONLINE rac1

ora.rac1.vip application ONLINE ONLINE rac1

ora....SM2.asm application ONLINE ONLINE rac2

ora....C2.lsnr application ONLINE ONLINE rac2

ora.rac2.gsd application ONLINE ONLINE rac2

ora.rac2.ons application ONLINE ONLINE rac2

ora.rac2.vip application ONLINE ONLINE rac2

利于-p选项,获得资源配置属性。

[root@rac2 bin]# crs_stat -p ora.rac2.vip

NAME=ora.rac2.vip

TYPE=application

ACTION_SCRIPT=/opt/oracle/product/10.2.0/crs_1/bin/racgwrap

ACTIVE_PLACEMENT=1

AUTO_START=1

CHECK_INTERVAL=60

DESCRIPTION=CRS application for VIP on a node

…………………………………………

USR_ORA_STOP_MODE=immediate

USR_ORA_STOP_TIMEOUT=0

USR_ORA_VIP=192.168.18.112

利用-p参数,获得资源权限。

[root@rac2 bin]# crs_stat -ls|grep vip

ora.rac1.vip root oinstall rwxr-xr—

ora.rac2.vip root oinstall rwxr-xr--

主要参数有-t/-v/-p/-ls/-f等。具体可以参见crs_stat –h

集群资源启动/停止CRS_START/CRS_STOP

这组命令主要负责各个节点上resources的启动/停止。可以针对全局资源(例如:crs_stop –all,表示停止所有节点上的resources),也可以针对节点上的某个特定的资源(例如:crs_start ora.rac2.ons,表示启动节点rac2上的ONS)。

集群资源配置CRS_REGISTER/CRS_UNREGISTER/CRS_PROFILE/CRS_SETPERM

这组命令主要负责集群资源的添加删除以及配置。

CRS_PROFILE:用来生成resource的profile文件(当然我们也可以手动编辑或者通过现有生成),默认存放路径$ORA_CRS_HOME/crs/profile目录下,加参数-dir 手动指定目录。默认名称为resource_name.cap.

crs_profile -create resource_name -t application –a .. –r .. –o..

3.1为 crs_profile中参数配置说明(比较多,挑一些说吧):

参数名称

说明

参数指令(以create为例)

NAME

资源名称

crs_profile –create resource_name

TYPE

资源类型(application, generic)

crs_profile – create resource_name t

ACTION_SCRIPT

用来管理HA方案脚本

crs_profile – create

resource_name –a …

ACTIVE_PLACEMENT

资源贮存的位置/节点

crs_profile –create

resource_name –o –ap …

AUTO_START

资源自启动

crs_profile –create

resource_name –o –as …

CHECK_INTERVAL

资源监控间隔

crs_profile –create

resource_name –o –ci …

FAILOVER_DELAY

资源failover的等待时间

crs_profile –create

resource_name –o –fd …

FAILURE_INTERVAL

资源重启尝试间隔

crs_profile –create

resource_name –o –fi …

FAILURE_THRESHOLD

资源重启尝试次数(最大20)

crs_profile –create

resource_name –o –ft …

HOSTING_MEMBERS

资源启动或者failover的首要节点选择

crs_profile –create

resource_name –h …

PLACEMENT

资源启动或者failover的节点选择模式(balancedbalancedbalanced

crs_profile – create

resource_name -p

REQUIRED_RESOURCES

当前资源所依赖的资源

crs_profile – create

resource_name -r

RESTART_ATTEMPTS

资源重配置之前的尝试启动次数

crs_profile –create

resource_name –o –ra …

SCRIPT_TIMEOUT

等待ACTION_SCRIPT的结果返回时间

crs_profile –create

resource_name –o –st …

USR_ORA_VIP

Vip地址

crs_profile –create vip_name -t application –a $ORA_CRS_HOME/bin/uservip –o oi=…,ov=…,on=…

crs_profile -update resource_name … 用来更新现有profile(更新的只是profile,而并不是对已经注册到crs里面的资源属性的更改)

crs_register负责将resource的注册到OCR。注册的方法是先生成profile,然后运行

crs_register resource [-dir …]命令,同时,crs_register也具有update resource功能,具体办法可以更新resource对应的profile文件,然后运行crs_register -u resource_name [-dir …] 或者直接发布crs_register –update resource_name …

比如,我将rac节点上的vip改为手动启动。

[root@rac1 crs]# crs_register -update ora.rac1.vip -o as=0

[root@rac1 crs]# crs_stat -p ora.rac1.vip|grep AUTO_START

AUTO_START=0

crs_unregister负责将resource从ocr中移除。必要时候需要加-f参数。

crs_setperm用来设置resource的权限(诸如设置owner,用户的读写权限等),更改owner用-o参数,更改group用-g,更改用户权限用-u,在此不多举例了。

<2>.CRSCTL

crsctl check crs,检查crs的健康情况。

[root@rac1 ~]# crsctl check crs

CSS appears healthy

CRS appears healthy

EVM appears healthy

crsctl控制CRS服务

crsctl start|stop|enable|disable crs

crsctl启动/停止resource

[root@rac1 ~]# crsctl stop resources

Stopping resources.

Successfully stopped CRS resources

[root@rac1 ~]# crsctl start resources

Starting resources.

Successfully started CRS resources

crsctl检查以及添加、删除voting disk

下面讲述。

更多参见crsctl help。

<3>SRVCTL

SRVCTL是一个强大的CRS和RDBMS的管理配置工具。相关用法参照srvctl -h

1) srvctl add/delete .. 添加删除资源。譬如我们在进行数据库单实例迁移到rac的时候,可以用这个工具手工注册database或者asm实例到OCR。

2) srvctl status … 资源的状态监测

3) srvctl start/stop … 资源的启动/停止,这个可以和crs_start/crs_stop互交使用。

4) srvctl modify .. 重新定义资源的属性

………………………………………………………..

(2).OCR的管理维护
<1> OCR的状态验证:

可以使用ocrcheck工具来验证OCR的状态以及空间使用情况。在Lunix下,/etc/oracle/ocr.loc文件记录了OCR使用的设备情况。

[root@rac1]# ocrcheck

Status of Oracle Cluster Registry is as follows :

Version : 2

Total space (kbytes) : 497896

Used space (kbytes) : 3996

Available space (kbytes) : 493900

ID : 958197763

Device/File Name : /dev/raw/raw5

Device/File integrity check succeeded

Device/File not configured

Cluster registry integrity check succeeded

<2> 在线添加/删除ocrmirror

OCR支持一个镜像,添加/删除镜像可以在线完成,主要在某个online的节点上执行命令即可。

[root@rac1]#ocrconfig -replace ocrmirror /dev/raw/raw5

[root@rac1 oracle]# cat /etc/oracle/ocr.loc

#Device/file getting replaced by device /dev/raw/raw5

ocrconfig_loc=/dev/raw/raw1

ocrmirrorconfig_loc=/dev/raw/raw5

可见,ocr.loc被自动更新。

移除ocr或者镜像的时候,只要不带路径,即可。

当一个crs中存在ocr和镜像的时候,如果移除ocr,镜像会自动转变成ocr的角色。

[root@rac1]# ocrconfig -replace ocr

[root@rac1]# cat /etc/oracle/ocr.loc

#Device/file /dev/raw/raw1 being deleted

ocrconfig_loc=/dev/raw/raw5

可以看到现在的ocrconfig_loc自动变为先前的ocrmirrorconfig_loc设备。

<3> 逻辑备份/恢复

备份命令:

ocrconfig –export [ path ]

还原命令

ocrconfig –import [ path ]

还原OCR的时候,需要停掉各节点crs服务。还原完成后,重新启动CRS。(如果有必要,注意在每个节点分别修改ocr.loc的对应使用设备)

<4> 物理备份/恢复

CRSD负责每4个小时进行一次OCR的备份,默认备份路径在$ORA_CRS_HOME/cdate/crs下,

可以使用ocrConfig –showbackup查看备份情况,如果想更改物理备份路径,可以使用ocrconfig –backuploc [ path ] 来完成

物理恢复命令:

ocrconfig –restore [ path ]

同样,还原OCR的时候,需要停掉各节点crs服务。还原完成后,重新启动CRS。(如果有必要,注意在每个节点分别修改ocr.loc的对应使用设备)

<5> ocrdump

ocrdump可以将ocr信息导出成ascii文本,用于给Oracle Supoort提供检修。

命令如下:

ocrdump

(3).Voting disk管理维护
Voting disk的维护相对简单些。

<1> Votingdisk 状态查询

[root@rac1]# crsctl query css votedisk

0 /dev/raw/raw2

located 1 votedisk(s).

<2>在线添加、删除votingdisk

Oracle建议配置奇数个votingdisk,添加/删除可以在线完成,在某个online的节点上执行命令即可。

添加votingdisk命令:

crsctl add css votedisk [path] -force

删除votingdisk命令:

crsctl add css votedisk [path] -force

<3>votingdisk备份恢复

备份、恢复采用dd命令。恢复的时候,注意停掉各节点上的CRS服务。

2.RDBMS管理维护

(1).spfile以及相关参数说明

最普遍情况,节点共用同一个spfile文件,放置在共享存储上,而每个节点上,相应目录下有一个pfile文件,而这个pfile文件指向共享存储上的spfile。

当我们需要修改某一节点上的paremeter的时候,需要显示的指定sid,例如:

SQL>alter system set sga_target=1024M scope=spfile sid=’rac1’;

System Altered.

这样,节点rac1上的sga_target参数被修改,不会影响其余节点上的参数设置。如果不加sid,默认为sid=’*’,也就是对所有节点生效。

RAC下,有一些不同与单实例的参数,列举如下:

① cluster_database
一般情况下,该参数在rac各实例下应该设置为true。在一些特别情况下,比如upgrade等,需要将该参数设置成false。
② db_name/db_unique_name/instance_name
各节点db_name需要一致,db_unique_name也需要一致(这与standby是不同的)。而instance_name配置成各个节点的实例名称。
③ instance_number
该参数表示节点上实例的实例号。
④ thread
该参数用来标示实例使用的redo线程。线程号与节点号/实例号没有直接关联。
⑤ local_listener
该参数用来手工注册监听。为解决ORA-12514错误,可以设置该参数。
⑥ remote_listener
该参数用来进行服务器端负载均衡配置。
⑦ cluster_interconnects
该参数用来指定集群中IPC通信的网络。如果集群中有多种网络用于高速互联,需要配置该参数。对于多个IP地址,用冒号将其隔开。对于集群中当前使用的互联地址,可以查询视图gv$cluster_interconnects或着oradebug ipc来查看。
⑧ max_commit_propagation_delay
该参数用于配置SCN的产生机制。在rac下,SCN的同步有2种模式:(1) Lamport Scheme.该模式下,由GES管理SCN的传播同步/span>该参数用来标示实例使用的redo线程。线程号与节点号/实例号没有直接关联。该 e="font-famit-fxt-i任normxt-i-kerning事 #00布与r: #立lt: -kernamitamit-fline-height: normal; mso-spacerun: 'yes'; mso-font-kerning: 0.0000pt;">⑧ max_commit_propagation_delay<: normal; mso-spacerun: 'yes'; mso-font-kerning: 0.0000pt;">⑧ max_commit_pize: 12pt;">该font-f-familtyl10g R2pacerun: 'yes';dent: s'; : c0pt 0p00; Broadcast on C与 s">该font-f (nt-siz小000700pan>0000; r: #run0p00; e="font-f) -fa0p00; no0000t-f0pt; mso-palert.logg: 获知-fam: 'yes'; han;" agin: 5pt 0pt>
(1).spfile以及相关参数说明

一般情况下,该参数在raccourier new; color: #000000; font-size: 12pt;">(1).spfile以及相关参数说明

(1).spfile以及相关参数说明

⑧ max_commit_pize: 12pt;">crsctl add css votedisk [path] -force

⑧ max_commit_pize: 12pt;"> (1).spfile以及相关参数说明

一般情况下,该参数normal; mso-spacerun: 'yes'; mso-font-kerning: 0.0000pt;">⑧ max_commit_pize: 12pt;">⑧ max_commit_propagation_delay<: normal; mso-spacerun: 'yes'; mso-font-kerning: 0.0000pt;">⑧ max_commit_pize: 12pt;"> (1).spfile以及相关参数说明

一般情况下,pagation_delay<: normal; mso-spacerun: 'yes'; mso-font-kerning: 0.0000pt;">⑧ max_commit_pize: 12pt;"> 是独立; mow-ow; color证ernin内rmaletop-a-kerniogin访epan ; mso-构造读
crsctl add css votedisk [path] -force

(1).spfile以及相关参数说明⑧ max_commit_pize: 12pt;"><使lt: auto; mso-margin-bottom-alew; color: #000000; font-size: 16px; line-height: 12pt; mso-spacerun: 'yes'; mso-font-kerning: 0.0000pt;">⑧ max_commit_pize: 12pt;">一般情况下,该参数normal; mso-spacerun: 'yes'; mso-font-kerning: 0.0000pt;">⑧ max_commit_pize: 12pt;">⑥ remote_listener⑧ max_commit_pize: 12pt;">⑥ remote_listener在raccourier new; color: #000000; font-size: 12pt;">(1).spfile以及相关参数说明

System Altered.

<=/archive/demo1'"left'demo1'font-family: courier new; color: #000000; font-size: 16px; line-height: 12pt; mso-spacerun: 'yes'; mso-font-kerning: 0.0000pt;">System Altered.

System Altered.

<=/archive/demo2'"left'demo2'font-family: courier new; color: #000000; font-size: 16px; line-height: 12pt; mso-spacerun: 'yes'; mso-font-kerning: 0.0000pt;">System Altered.

System Altered.

System Altered.

System Altered.

System Altered.

⑧ max_commit_pize: 12pt;"> System Altered.

System Altered.

System Altered.

System Altered.

< on Sun Aug 3 22:06:50 2008 mso-margin-bottom-alt: auto;" align="left"> System Altered.

System Altered.

System Altered.

System Altered.

System Altered.

System Altered.

System Altered.

System Altered.

System Altered.

System Altered.

System Altered.

System Altered.

System Altered.

System Altered.

System Altered.

System Altered.

System Altered.

System Altered.

System Altered.

System Altered.

System Altered.

⑧ max_commit_pize: 12pt;"> (1).spfile以及相关参数说明

一般情况下,pagapan>在raccourier new; color: #000000; font-size: 12pt;">(1).spfile以及相关参数说明

⑧ max_commit_pize: 12pt;">一般情况下,该参数norma: normal; mso-spacerun: 'yes'; mso-font-kerning: 0.0000pt;">⑥ remote_listeize: 12pt;"> System Altered.

System Altered.

System Altered.

System Altered.

System Altered.

System Altered.

System Altered.

System Altered.

System Altered.

System Altered.

⑥ remote_listeize: 12pt;">一般情况下,该参数normal; mso-spacerun: 'yes'; mso-font-kerning: 0.0000pt;">一般情况下ize: 12pt;">⑥ remote_liste该参数normal; mso-spacerun: 'yes'; mso-font-kerning: 0.0000pt;">一般情况下ize: 12pt;">⑥ remote_liste该参数normal; mso-spacerun: 'yes'; mso-font-kerning: 0.0000pt;">一般情况下ize: 12pt;">⑥ remote_liste该参数norma: normal; mso-spacerun: 'yes'; mso-font-kerning: 0.0000pt;">⑥ remote_listet-family: courier new; color: #000000; font-size: 16px; line-height: normasm_power_limit:该'yes';用来16px进程 ARBx agi量ow-负责控制负载平衡操作ag速rto;取值 从 0 到 11to;默认值为1to; mso-margin-bot: auto;" align="left"> (1).spfile以及相关参数说明

一般情况下,pagapan>l; mso-spacerun: 'yes'; mso-font-kerning: 0.0000pt;">一般情况下ont-family: courier new; color: #000000; font-size: 16px; word-breafont-sV$ASM_DISK/ V$ASM_DISK_STAT:记录可以被ASM:rphan识别的;盘0息但e<;盘并不一定是正tyle:rphan0用的to;norma: normal; mso-spacerun: 'yes'; mso-font-kerning: 0.0000pt;">⑥ remote_listepagapan>l; mso-spacerun: 'yes'; mso-font-kerning: 0.0000pt;">一般情况下ont-family: courier new; color: #000000; font-size: 16px; word-breafont-sV$ASM_DISKGROUP/ V$ASM_DISKGROUP_STAT:记录asm0ptpagdiskgroup0息to;norma: normal; mso-spacerun: 'yes'; mso-font-kerning: 0.0000pt;">⑥ remote_listepagapan>l; mso-spacerun: 'yes'; mso-font-kerning: 0.0000pt;">一般情况下ont-family: courier new; color: #000000; font-size: 16px; word-breafont-sV$ASM_ALIAS:记录diskgroupwidow-pag'名0息to;norma: normal; mso-spacerun: 'yes'; mso-font-kerning: 0.0000pt;">⑥ remote_listepagapan>l; mso-spacerun: 'yes'; mso-font-kerning: 0.0000pt;">一般情况下ont-family: courier new; color: #000000; font-size: 16px; word-breafont-sV$ASM_FILE:记录diskgroup中agiidow-0息to;norma: normal; mso-spacerun: 'yes'; mso-font-kerning: 0.0000pt;">⑥ remote_listepagapan>l; mso-spacerun: 'yes'; mso-font-kerning: 0.0000pt;">一般情况下ont-family: courier new; color: #000000; font-size: 16px; word-breafont-sV$ASM_OPERATION:记录ASM:rphan0p当前-colagan><长i间操作0息to;norma: normal; mso-spacerun: 'yes'; mso-font-kerning: 0.0000pt;">⑥ remote_listepagapan>l; mso-spacerun: 'yes'; mso-font-kerning: 0.0000pt;">一般情况下ont-family: courier new; color: #000000; font-size: 16px; word-breafont-sV$ASM_TEMPLATE:记录diskgroup模板to;norma: normal; mso-spacerun: 'yes'; mso-font-kerning: 0.0000pt;">⑥ remote_listepagapan>: normal; mso-spacerun: 'yes'; mso-font-kerning: 0.0000pt;">⑥ remote_listeont-family: courier new; color: #000000; font-size: 16px; word-breafont-st-family: courier ight: normal; mso-spacerun: 'yes'; mso-font-kerning: 0.V$ASM_CLIENT:记录0用该asm-kerningtpagdiskgrouppagrdbms-kernin息to;norma: normagin-bot: auto;" align="left"> (1).spfile以及相关参数说明

一般情况下,pagapan>⑥ remote_listeont-family: courier new; color: #000000; font-size: 16px; word-breafont-s<1inde.t: 0pttyl线添加、删除磁盘组>: normal; mso-spacerun: 'yes'; mso-font-kerning: 0.0000pt;">⑥ remote_listepagapan>⑥ remote_listeont-family: courier new; color: #000000; font-size: 16px; word-breafont-srspan><5pt 0pt; g加diskgroup,集群ng;外pag-top-a-不会自动mount新g加pagdiskgroup,an;" a动执colto;norma: normal; mso-spacerun: 'yes'; mso-font-kerning: 0.0000pt;">⑥ remote_listepagapan>: normal; mso-spacerun: 'yes'; mso-font-kerning: 0.0000pt;">⑥ remote_listeont-family: courier new; color: #000000; font-size: 16px; word-breafont-st-family: courier new; color: #000000; font-size: 16px; line-height: norm-top-a1fa mso-margin-bottom-alt: auto;" align="left"> System Altered.

System Altered.

System Altered.

System Altered.

System Altered.

System Altered.

⑥ remote_listeont-family: courier new; color: #000000; font-size: 16px; word-breafont-st-family: courier new; color: #000000; font-: 'yes'; mso-fon-hkernin; col此时观察-top-attom-alt-family: courier new; color: #000000; font-size: 16px; line-height: norm2; mr加pag磁盘组没gin-mountto;norma: normagin-bot: auto;" align="left"> ⑥ remote_listeont-family: courier new; color: #000000; font-size: 16px; word-breafont-st-family: courier new; color: #000000; font-: 'yes'; mso-fon-hkernin; col删除ttom-alt-family: courier new; color: #000000; font-size: 16px; line-height: normdiskgroup-fam保留an><5pt 0pdiskgroup为mount状态fam将其余5pt 0pt; pagdiskgrouppdismountfam然后执col删除命令to;norma: normagin-bot: auto;" align="left"> (1).spfile以及相关参数说明

一般情况下,pagapan>

⑥ remote_listepagapan>: normal; mso-spacerun: 'yes'; mso-font-kerning: 0.0000pt;"> 一般情况下,pagapan>⑥ remote_listepagapan>: normalcourier new; color: #000000; font-size: 12pt;">(1).spfile以及相关参数说明

<数据widow-和归档日志全部放rsp共享存储t; pagt: 系统fam备份与恢复过程0单-kerni0ptpag'乎an>样to;而归档日志如果采用的是本地;盘fam就an;" ;加a意to;0pt面分别来模拟e<'份恢复过程to; mso-margin-bottom-alt-family: courier new; color: #000000; font-size: 16px; line-height: normal; mso-spacerun: 'yes'; mso-font-kerning: 0.0000pt;">一般情况下,pagapan>(1).spfile以及相关参数说明

(1).spfile以及相关参数说明

⑥ remote_listepagapan>: normal; mso-spacerun: 'yes'; mso-font-kerning: 0.0000pt;">⑥ remote_listeont-family: courier new; color: #000000; font-size: 16px; word-breafont"font-family: courier new; color: #000000; font-size: 16px; word-brea: norm?-database进col备份 mso-margin-bottom-alt: auto;" align="left"> ⑥ remote_listeont-family: courier new; color: #000000; font-size: 16px; word-breafont"font-family: courier new; color: #000000; font-size: 16px; word-brea: norm?添加数据fam用于测试恢复效果ont-family: courier new; color: #000000; font-size: 16px; line-height: 12pt; mso-spacerun: 'yes'; mso-font-kerning: 0.0000pt;"><0.75ew; solidpann stor: nt-family: courier new; color: #000000; focolor: #000000; font-size: 16px; line-height>

⑥ remote_listeont-family: courier new; color: #000000; font-size: 16px; word-breafont"font-family: courier new; color: #000000; font-size: 16px; word-brea: norm?模拟故障/恢复rgin-bottom-altoter new; color: #000000; font-size: 16px; line-height: 12pt; mso-spacerun: 'yes'; mso-font-kerning: 0.0000pt;"> ⑥ remote_listeont-family: courier new; color: #000000; font-size: 16px; word-breafont"font-family: courier new; color: #000000; font-size: 16px; word-brea: norm?恢复-k毕,来看an><验证数据faont-family: courier new; color: #000000; font-size: 16px; line-height: 12pt; mso-spacerun: 'yes'; mso-font-kerning: 0.0000pt;"><0.75ew; solidpann stor: nt-family: courier new; color: #000000; focolor: #000000; font-size: 16px; line-height>

(1).spfile以及相关参数说明

<归档日志p于无法access而抛出异常to;r以采取如0ptpag'份方式fam目pag'是使得'份通道能够access所ginagi据字典中记录pag'档日志信息to; mso-margin-bottom-alt-family: courier new; color: #000000; font-size: 16px; line-height: normal; mso-spacerun: 'yes'; mso-font-kerning: 0.0000pt;">一般情况下,pagapan>一般情况下ont-family: courier new; color: #000000; font-size: 16px; word-breafont"f恢复agi候,copy所gin-top-a产生ag相关'份片/集和归档日志widow-到待恢复top-afamspan><-top-a上执colrestore/recov 0操作即可to;norma: normal; mso-spacerun: 'yes'; mso-font-kerning: 0.0000pt;">⑥ remote_listepagapan>: normal; mso-spacerun: 'yes'; mso-font-kerning: 0.0000pt;">一般情况下ont-family: courier new; color: #000000; font-size: 16px; word-breafont ftro: 宋体t-st-family: courier new; color: #000000; font-: 'yes'; mso-fon-hkernin; col模拟an><=/archive/demo1/' sid='demo1'font-family: courier new; color: #000000; font-size: 16px; line-height: 12pt; mso-spacerun: 'yes'; mso-font-kerning: 0.0000pt;"><=/archive/demo2/' sid='demo2'font-family: courier new; color: #000000; font-size: 16px; line-height: 12pt; mso-spacerun: 'yes'; mso-font-kerning: 0.0000pt;">

<0.75ew; solidpann stor: nt-family: courier new; color: #000000; focolor: #000000; font-size: 16px; line-height>

< ONLINE ONLINE node1ont-family: courier new; color: #000000; font-size: 16px; line-height: 12pt; mso-spacerun: 'yes'; mso-font-kerning: 0.0000pt;">< ONLINE ONLINE node1ont-family: courier new; color: #000000; font-size: 16px; line-height: 12pt; mso-spacerun: 'yes'; mso-font-kerning: 0.0000pt;">< ONLINE OFFLINEont-family: courier new; color: #000000; font-size: 16px; line-height: 12pt; mso-spacerun: 'yes'; mso-font-kerning: 0.0000pt;">< ONLINE ONLINE node1ont-family: courier new; color: #000000; font-size: 16px; line-height: 12pt; mso-spacerun: 'yes'; mso-font-kerning: 0b000erize: 16spann stor: 1pt solid 0.0000pt;"><0.75ew; solidpann stor: nt-family: courier new; color: #000000; focolor: #000000; font-size: 16px; line-height>

< ONLINE ONLINE node1ont-family: courier new; color: #000000; font-size: 16px; line-height: 12pt; mso-spacerun: 'yes'; mso-font-kerning: 0.0000pt;">

< Failov 0), 一种是FCF(Fast Connec;">< Failov 0).ont-family: count-family: courier new; color: #000000; font-size: 16px; word-breafont 明

<0. new; 5.4new; 0. new; 5.4new; ylen stableslayout-x;"><0.50ew; solidpann stor: n-en sb000eririer ix;"><0.50ew; solidpann stor: n-en sb000eri: #0000000.50ew; solidpann stor: n-en sb000erize: 16px;"><0.50ew; solidpann stor: n-b000erspann stor: 1pt solid " vyle="fo: #" amith="211"lor: #000000; font-size: 16px; line-height: 12pt; mso-spacerun: 'yes'; mso-font-kerning: 0e="font-family: Courier Nent-kerning: 0.0000pt;"> tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-size: 16px; line-height: normal; mso-spaceront-size: 16px; word-brea2le="f参数ont-family: courier new;yyyy:colorw;yyy<0.50ew; solidpann stor: n-en sb000eri: #0000000.50ew; solidpann stor: n-en sb000erize: 16px;"><0.50ew; solidpann stor: n" vyle="fo: #" amith="324"lor: #000000; font-size: 16px; line-height: 12pt; mso-spacerun: 'yes'; mso-font-kerning: 0e="font-family: Courier Nent-kerning: 0.0000pt;"> tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-size: 16px; line-height: normal; mso-spaceront-size: 16px; word-brea2le="f描述ont-family: courier new;yyyy:colorw;yyy<0.50ew; solidpann stor: n-en sb000eririer ix;"><0.50ew; solidpann stor: n-en sb000eri: #0000000.50ew; solidpann stor: n-en sb000erize: 16px;"><0.50ew; solidpann stor: n" vyle="fo: #" amith="211"lor: #000000; font-size: 16px; line-height: 12pt; mso-spacerun: 'yes'; mso-font-kerning: 0e="font-family: Courier Nent-kerning: 0.0000pt;36> tyle="font-family: courier new; color: #000000; font-size: 16Times1New Romrier; font-size: 16px; word-breafont-size: 16px; line-height: normal; mso-spaceront-size: 16px; word-brea2le="fFAILOVERont-family: courier new;yyyy:colorw;yyy<0.50ew; solidpann stor: n-en sb000eri: #0000000.50ew; solidpann stor: n-en sb000erize: 16px;"><0.50ew; solidpann stor: n" vyle="fo: #" amith="324"lor: #000000; font-size: 16px; line-height: 12pt; mso-spacerun: 'yes'; mso-font-kerning: 0e="font-family: Courier Nent-kerning: 0.0000pt;"> tyle="font-family: courier new; color: #000000; font-size: 16Times1New Romrier; font-size: 16px; word-breafont-size: 16px; line-height: normal; mso-spaceront-size: 16px; word-brea2le="fFailov 0ily: courier nurier nunt-family: courier new; color: #000000; font-size: 16px; word-brea2le="f: t-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-s控制开关(:gin-botly: count-family: courier new; color: #000000; font-size: 16px; word-breafont 明

<0.50ew; solidpann stor: n-en sb000eririer ix;"><0.50ew; solidpann stor: n-en sb000eri: #0000000.50ew; solidpann stor: n-en sb000erize: 16px;"><0.50ew; solidpann stor: n" vyle="fo: #" amith="211"lor: #000000; font-size: 16px; line-height: 12pt; mso-spacerun: 'yes'; mso-font-kerning: 0e="font-family: Courier Nent-kerning: 0.0000pt;54> tyle="font-family: courier new; color: #000000; font-size: 16Times1New Romrier; font-size: 16px; word-breafont-size: 16ily: courier new; color: #000000; font-size: 16px; word-brea2le="fTYPEont-family: courier new;yyyy:colorw;yyy<0.50ew; solidpann stor: n-en sb000eri: #0000000.50ew; solidpann stor: n-en sb000erize: 16px;"><0.50ew; solidpann stor: n" vyle="fo: #" amith="324"lor: #000000; font-size: 16px; line-height: 12pt; mso-spacerun: 'yes'; mso-font-kerning: 0e="font-family: Courier Nent-kerning: 0.0000pt;">

< /selectont-family: courier new;yyyy:color: #000000; font-size: 16px; line-height: 12pt; mso-spacerun: 'yes'; mso-font-kerning: 0e="font-family: Courier Nent-kerning: 0.0000pt;">

<: mso-margin-bottom-alunt-family: courier new; color: #000000; font-size: 16px; word-brea2le="f: t-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-s提供ily: courier n: t-family: courier new; color: #000000; font-size: 16px; word-breafont 明

<0.50ew; solidpann stor: n-en sb000eririer ix;"><0.50ew; solidpann stor: n-en sb000eri: #0000000.50ew; solidpann stor: n-en sb000erize: 16px;"><0.50ew; solidpann stor: n" vyle="fo: #" amith="211"lor: #000000; font-size: 16px; line-height: 12pt; mso-spacerun: 'yes'; mso-font-kerning: 0e="font-family: Courier Nent-kerning: 0.0000pt;48>

<0.50ew; solidpann stor: n-en sb000eri: #0000000.50ew; solidpann stor: n-en sb000erize: 16px;"><0.50ew; solidpann stor: n" vyle="fo: #" amith="324"lor: #000000; font-size: 16px; line-height: 12pt; mso-spacerun: 'yes'; mso-font-kerning: 0e="font-family: Courier Nent-kerning: 0.0000pt;"> tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-size: 16px; line-height: normal; mso-spaceront-size: 16px; word-brea2le="f两种类型ont-family: courier nunt-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; color: #000000; font-size: 16Times1New Romrier; font-size: 16px; word-breafont-size: 16ily: courheight: normal; mso-spaceront-size: 16px; word-brea2le="f:basic/preconnec;ont-family: courier new;yyyy:color: #000000; font-size: 16px; line-height: 12pt; mso-spacerun: 'yes'; mso-font-kerning: 0e="font-family: Courier Nent-kerning: 0.0000pt;"> tyle="font-family: courier new; color: #000000; font-size: 16Times1New Romrier; font-size: 16px; word-breafont-size: 16ily: courheight: normal; mso-spaceront-size: 16px; word-brea2le=">Basic:cli00pont-family: courier nunt-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-size: 16px; line-height: normal; mso-spaceront-size: 16px; word-brea2le="f同时只连接一个节点,故障切换时跳转到另外节点ont-family: courier new;yyyy:color: #000000; font-size: 16px; line-height: 12pt; mso-spacerun: 'yes'; mso-font-kerning: 0e="font-family: Courier Nent-kerning: 0.0000pt;"> tyle="font-family: courier new; color: #000000; font-size: 16Times1New Romrier; font-size: 16px; word-breafont-size: 16ily: courheight: normal; mso-spaceront-size: 16px; word-brea2le=">Preconnec;ont-family: courier nunt-family: courier new; color: #000000; font-size: 16px; word-brea2le="f: t-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-s:需要与ily: courier nunt-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; color: #000000; font-size: 16Times1New Romrier; font-size: 16px; word-breafont-sbackupily: courier nunt-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-s同时使用,ily: courier nunt-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; color: #000000; font-size: 16Times1New Romrier; font-size: 16px; word-breafont-scli00pont-family: count-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-s同时连接到主节点和ily: courier nunt-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; color: #000000; font-size: 16Times1New Romrier; font-size: 16px; word-breafont-sbackupily: courier nurier nunt-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-size: 16px; line-height: normal; mso-spaceront-size: 16px; word-brea2le="f节点ont-family: courier new;yyyy:colorw;yyy<0.50ew; solidpann stor: n-en sb000eririer ix;"><0.50ew; solidpann stor: n-en sb000eri: #0000000.50ew; solidpann stor: n-en sb000erize: 16px;"><0.50ew; solidpann stor: n" vyle="fo: #" amith="211"lor: #000000; font-size: 16px; line-height: 12pt; mso-spacerun: 'yes'; mso-font-kerning: 0e="font-family: Courier Nent-kerning: 0.0000pt;"> tyle="font-family: courier new; color: #000000; font-size: 16Times1New Romrier; font-size: 16px; word-breafont-size: 16ily: courheight: normal; mso-spaceront-size: 16px; word-brea2le=">BACKUP mso-margin-bottom-alew;yyyy:colorw;yyy<0.50ew; solidpann stor: n-en sb000eri: #0000000.50ew; solidpann stor: n-en sb000erize: 16px;"><0.50ew; solidpann stor: n" vyle="fo: #" amith="324"lor: #000000; font-size: 16px; line-height: 12pt; mso-spacerun: 'yes'; mso-font-kerning: 0e="font-family: Courier Nent-kerning: 0.0000pt;"> tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-size: 16px; line-height: normal; mso-spaceront-size: 16px; word-brea2le="f采用ont-family: courier nunt-family: courier new; color: #000000; font-size: 16px; word-brea2le="f: t-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; color: #000000; font-size: 16Times1New Romrier; font-size: 16px; word-breafont-sPreconnec;ont-family: courier nunt-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-size: 16px; line-height: normal; mso-spaceront-size: 16px; word-brea2le="f模式的备用连接配置ily: courier nurier new;yyyy:colorw;yyy<0.50ew; solidpann stor: n-en sb000eririer ix;"><0.50ew; solidpann stor: n-en sb000eri: #0000000.50ew; solidpann stor: n-en sb000erize: 16px;"><0.50ew; solidpann stor: n" vyle="fo: #" amith="211"lor: #000000; font-size: 16px; line-height: 12pt; mso-spacerun: 'yes'; mso-font-kerning: 0e="font-family: Courier Nent-kerning: 0.0000pt;48>

RETRIES mso-margin-bottom-alew;yyyy:colorw;yyy<0.50ew; solidpann stor: n-en sb000eri: #0000000.50ew; solidpann stor: n-en sb000erize: 16px;"><0.50ew; solidpann stor: n" vyle="fo: #" amith="324"lor: #000000; font-size: 16px; line-height: 12pt; mso-spacerun: 'yes'; mso-font-kerning: 0e="font-family: Courier Nent-kerning: 0.0000pt;"> tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-size: 16px; line-height: normal; mso-spaceront-size: 16px; word-brea2le="f故障切换时重试次数ont-family: courier new;yyyy:colorw;yyy<0.50ew; solidpann stor: n-en sb000eririer ix;"><0.50ew; solidpann stor: n-en sb000eri: #0000000.50ew; solidpann stor: n-en sb000erize: 16px;"><0.50ew; solidpann stor: n" vyle="fo: #" amith="211"lor: #000000; font-size: 16px; line-height: 12pt; mso-spacerun: 'yes'; mso-font-kerning: 0e="font-family: Courier Nent-kerning: 0.0000pt;"> tyle="font-family: courier new; color: #000000; font-size: 16Times1New Romrier; font-size: 16px; word-breafont-size: 16ily: courheight: normal; mso-spaceront-size: 16px; word-brea2le=">DELAY mso-margin-bottom-alew;yyyy:colorw;yyy<0.50ew; solidpann stor: n-en sb000eri: #0000000.50ew; solidpann stor: n-en sb000erize: 16px;"><0.50ew; solidpann stor: n" vyle="fo: #" amith="324"lor: #000000; font-size: 16px; line-height: 12pt; mso-spacerun: 'yes'; mso-font-kerning: 0e="font-family: Courier Nent-kerning: 0.0000pt;"> tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-size: 16px; line-height: normal; mso-spaceront-size: 16px; word-brea2le="f故障切换时重试间隔时间ont-family: courier new;yyyy:colorw;yyy tyle="font-family: courier new; col
tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-size: 16px; line-height: normar: #000000; font-size: 16px; word-brea2le="f10gR2提供Server端的TAF配置,需要调用dbms_service包来在实例上进行修改。ont-family: courier new; color: #000000; font-size: 16px; line-height: 12pt; mso-spacerun: 'yes'; mso-font-kerning: 0.0000pt;"> tyle="font-family: courier new; col
tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-sFCF是10g引进的一种新的failov 0机制,'依靠各节点的ons进程,通过广播FAN事件来获得各节点的运行情况,是一种前摄性的判断,支持JDBC/OCI/ODP.NET:ly: courier nunt-family: courier new; color: #000000; font-size: 16px; word-breafont 明
tyle="font-family: courier new; col
tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-s(1).ons配置ily: courier nu t-family: courier new; color: #000000; font-size: 16px; word-breafont 明
tyle="font-family: courier new; col
tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-sonsctl工具配置各节点的local /remote节点以及端口.配置文件路径:$ORACLE_HOME/opmn/ons.config.ily: courier nu t-family: courier new; color: #000000; font-size: 16px; word-breafont 明
tyle="font-family: courier new; col
tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-s使用 onsctl debug 跟踪ons进程是否正常运行。ont-family: cou t-family: courier new; color: #000000; font-size: 16px; word-breafont 明
tyle="font-family: courier new; col
tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-s(2).配置连接池(以jdbc为例)ont-family: cou t-family: courier new; color: #000000; font-size: 16px; word-breafont 明
tyle="font-family: courier new; col
tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-s需要连接池支持Implicit Connec;">< Cache,设置FastConnec;"> tyle="font-family: courier new; col
tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-s将ojdbc14.jar / ons.jar等加入CLASSPATH.具体代码可以参见联机文档或metylenk相关文档.ily: courier nu t-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; col
tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-s(2) Load Balanceily: courier nuritrongnunt-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; col
tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-s10g的 load balance同前版本相比有了很大功能上pag改进,依据Load Balanccou Advisory,提供了Runtime Connec;">< Load Balanccoupag策略,但个人认为这也是个相对矛盾所在。越是细化的负载均衡机制,越是有加重cache fus"><的可能,这对racpag整体性能是个考验。ont-family: cou t-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; col
tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-sload balance主要有两种实现方式:一种是Connec;">< Load Balanccou(CLB),'外一种是Runtime Connec;">< Load Balanccou(RCLB)。ont-family: cou t-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; col
tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-sCLB分为客户端cli00pordde和服务器端serverordde两种。ont-family: cou t-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; col
tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-scli00pordde需要在tnsname.ora添加LOAD_BALANCE=ON来实现,提供基于平衡连接数的负载方案.ily: courier nu t-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; col
tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-sserverordde需要修改remote_listener参数,让listener能监听到集群中pag所有节点,通过PMON来收集节点上pag负载信息。ont-family: cou t-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; col
tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-size: 16px; line-height: normal; mso-spaceront-size: 16px; word-brea2le="fFCF默认支持RCLB功能,RCLB通过load balanccou advisory事件来对连接提供更好pag服务。RCLB有两种负载平衡方案可供选择—-基于总体service name和基于总体Throughput。可以通过dbms_service来设置具体paggoal方案。ont-family: courier new; color: #000000; font-size: 16px; line-height: 12pt; mso-spacerun: 'yes'; mso-font-kerning: 0.0000pt;"> tyle="font-family: courier new; col
tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-brea2le="fLoad Balanc这部分是我存疑最多的地方,查阅了很多文档,说法不一,且没有翔实ag案例证明,'此也希望有过研究pag朋友们做指正。ont-family: coew; color: #000000; font-size: 16px; line-height: 12pt; mso-spacerun: 'yes'; mso-font-kerning: 0.0000pt;"> tyle="font-family: couri1r new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-size: 16px; line-height: normal; mso-spaceront-size: 16px; word-brea0.5le="fRAC下其他维护实施相关:ly: couly: cou t-family: courier new; color: #000000; font-size: 16px; word-brea0.5le="for: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont ftro: "="f/:ly: couly: cou t-family: courier new; color: #000000; font-size: 16px; word-breafont ftro: 宋体t-size: 16px; line-height: normal; mso-spaceront-size: 16px; word-brea0.5le="f案例 mso-margin-bottom-alew; color: #000000;pe: 16px; line-height: 12pt; mso-spacerun: 'yes'; mso-font-kerning: 0e="fonize: 16sp5>
tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-size: 16px; line-height: normal; mso-spaceront-size: 16px; word-brea2le="f本环节侧重一些urier nunt-family: courier new; color: #000000; font-size: 16px; word-brea2le="fRAC工程维护相关的实际案例,暂举例以下案例 mso-margin-bottom-alew; color: #000000;pe: 16px; line-height: 12pt; mso-spacerun: 'yes'; mso-font-kerning: 0e="fonize: 16sp5>
tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-size: 16px; line-height: normal; mso-spaceront-size: 16px; word-brea2le="f1.集群中主机名pag更改ont-family: courier nunt-family: courier new; color: #000000; font-size: 16px; word-brea2le="f: t-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; col
tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-s2.集群中IP地址pag更改ont-family: cou t-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; col
tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-s3.集群中节点的添加/删除ont-family: cou t-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; col
tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-s4.升级:9i rac升级10g racont-family: cou t-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; col
tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-s5.rac + dg 搭建ont-family: cou t-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; col
tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-size: 16px; line-height: normal; mso-spaceront-size: 16px; word-brea2le="f6.其他 mso-margin-bottom-alew; color: #000000;pe: 16px; line-height: 12pt; mso-spacerun: 'yes'; mso-font-kerning: 0e="fonize: 16sp5> tyle="font-family: courier new; col
tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-size: 16px; line-height: normal; mso-spaceront-size: 16px; word-brea2le="f<一&g tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont ftro: 宋体t-size: 16px; line-height: normal; mso-spaceront-size: 16px; word-brea2le="f以下为一个实际案例,下表为更改前后的主机名p对比 mso-margin-bottom-alew; color: #000000;pe: 16px; line-height: 12pt; mso-spacerun: 'yes'; mso-font-kerning: 0e="fonize: 16sp0>

tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-size: 16px; line-height: normal; mso-spaceront-size: 16px; word-brea2le="f1.生成listener的cap文件ont-family: courier nuritrongnew; color: #000000;pe: 16px; line-height: 12pt; mso-spacerun: 'yes'; mso-font-kerning: 0e="fonize: 16sp0>

tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-size: 16px; line-height: normal; mso-spaceront-size: 16px; word-brea2le="f2.停掉所有pag资源,'份ocr、votcoudisk并重新格式化ont-family: courier nuritrongnunt-family: courier new; color: #000000; font-size: 16px; word-brea2le="f: t-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; col
tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-size: 16px; line-height: normal; mso-spaceront-size: 16px; word-brea2le="f备份OCR mso-margin-bottom-alew; color: #000000;pe: 16px; line-height: 12pt; mso-spacerun: 'yes'; mso-font-kerning: 0e="fonize: 16sp0>

< : 2 mso-margin-bottom-alew; color: #000000;pe: 16px; line-height: 12pt; mso-spacerun: 'yes'; mso-font-kerning: 0e="fonize: 16sp0>

tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-size: 16px; line-height: normal; mso-spaceront-size: 16px; word-brea2le="f备份urier nunt-family: courier new; color: #000000; font-size: 16px; word-brea2le="fvotedisk mso-margin-bottom-alew; color: #000000;pe: 16px; line-height: 12pt; mso-spacerun: 'yes'; mso-font-kerning: 0e="fonize: 16sp0>

 ont-family: courier nuri: cou t-family: courier new; color: #000000; font-size: 16px; word-breafont 明

tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont ftro: 宋体t-size: 16px; line-height: normal; mso-spaceront-size: 16px; word-brea2le="f重新格式化ont-family: courier new; color: #000000;pe: 16px; line-height: 12pt; mso-spacerun: 'yes'; mso-font-kerning: 0e="fonize: 16sp0>

tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-size: 16px; line-height: normal; mso-000; font-size: 16px; word-brea2le="f3.OS上修改hostname并编辑相关文件,重启主机(步骤略)ont-family: courier nuritrongnew; color: #000000;pe: 16px; line-height: 12pt; mso-spacerun: 'yes'; mso-font-kerning: 0e="fonize: 16sp5> tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-size: 16px; line-height: normal; mso-000; font-size: 16px; word-brea2le="f4.重新配置集群互信。(步骤略)ont-family: courier nuritrongnew; color: #000000;pe: 16px; line-height: 12pt; mso-spacerun: 'yes'; mso-font-kerning: 0e="fonize: 16sp5> tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-size: 16px; line-height: normal; mso-000; font-size: 16px; word-brea2le="f5.编辑$ORA_CRS_HOME/ install/rootconfig文件,修改以下为你实际pag情况。ont-family: courier nuritrongnew; color: #000000;pe: 16px; line-height: 12pt; mso-spacerun: 'yes'; mso-font-kerning: 0e="fonize: 16sp5> tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-size: 16px; line-height: normal; mso-000; font-size: 16px; word-brea2le="fORA_CRS_HOME=/opt/oracle/product/10.2.0/crs_1 mso-margin-bottom-alunt-family: courier new; color: #000000; font-size: 16px; word-brea2le="f: t-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; col
tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-sCRS_ORACLE_OWNER=oracle:ly: couly: cou t-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; col
tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-sCRS_DBA_GROUP=oinstall:ly: couly: cou t-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; col
tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-sCRS_VNDR_CLUSTER=false:ly: couly: cou t-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; col
tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-sCRS_OCR_LOCATIONS=/dev/raw/raw1 mso-margin-bot t-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; col
tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-sCRS_CLUSTER_NAME=crs mso-margin-bot t-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; col
tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-sCRS_HOST_NAME_LIST=td1,1,td2,2 mso-margin-bot t-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; col
tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-sCRS_NODE_NAME_LIST=td1,1,td2,2 mso-margin-bot t-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; col
tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-sCRS_PRIVATE_NAME_LIST=td1-priv,1,td2-priv,2 mso-margin-bot t-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; col
tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-sCRS_LANGUAGE_ID=’AMERICAN_AMERICA.WE8ISO8859P1′ont-family: cou t-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; col
tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-sCRS_VOTING_DISKS=/dev/raw/raw110ont-family: cou t-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; col
tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-sCRS_NODELIST=td1,td2 mso-margin-bot t-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; col
tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-size: 16px; line-height: normar: #000000ceront-size: 16px; word-brea2le="fCRS_NODEVIPS=’td1/td1-vip/255.255.255.0/eth0,td2/td2-vip/255.255.255.0/eth0′ mso-margin-bottom-alew; color: #000000;pe: 16px; line-height: 12pt; mso-spacerun: 'yes'; mso-font-kerning: 0e="fonize: 16sp5> tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont ftro: 宋体t-size: 16px; line-height: normal; mso-spaceront-size: 16px; word-brea2le="f'每个节点依次执行: mso-margin-bottom-alew; color: #000000;pe: 16px; line-height: 12pt; mso-spacerun: 'yes'; mso-font-kerning: 0e="fonize: 16sp0>

< upgraded successfully mso-margin-bottom-alew; color: #000000;pe: 16px; line-height: 12pt; mso-spacerun: 'yes'; mso-font-kerning: 0e="fonize: 16sp0>

< vers">< 3 detected.ily: courier nutom-alew; color: #000000;pe: 16px; line-height: 12pt; mso-spacerun: 'yes'; mso-font-kerning: 0e="fonize: 16sp0>

< 3 is 10G Release 2.ily: courier nutom-alew; color: #000000;pe: 16px; line-height: 12pt; mso-spacerun: 'yes'; mso-font-kerning: 0e="fonize: 16sp0>

<.ily: courier nutom-alew; color: #000000;pe: 16px; line-height: 12pt; mso-spacerun: 'yes'; mso-font-kerning: 0e="fonize: 16sp0>

< resmarce on (2) nodes…ont-family: courier new; color: #000000;pe: 16px; line-height: 12pt; mso-spacerun: 'yes'; mso-font-kerning: 0e="fonize: 16sp0>

< resmarce on (2) nodes…ont-family: courier new; color: #000000;pe: 16px; line-height: 12pt; mso-spacerun: 'yes'; mso-font-kerning: 0e="fonize: 16sp0>

< resmarce on (2) nodes…ont-family: courier new; color: #000000;pe: 16px; line-height: 12pt; mso-spacerun: 'yes'; mso-font-kerning: 0e="fonize: 16sp0>

< resmarce on (2) nodes…ont-family: courier new; color: #000000;pe: 16px; line-height: 12pt; mso-spacerun: 'yes'; mso-font-kerning: 0e="fonize: 16sp0>

< resmarce on (2) nodes…ont-family: courier new; color: #000000;pe: 16px; line-height: 12pt; mso-spacerun: 'yes'; mso-font-kerning: 0e="fonize: 16sp0>

< resmarce on (2) nodes… mso-margin-bottom-alew; color: #000000;pe: 16px; line-height: 12pt; mso-spacerun: 'yes'; mso-font-kerning: 0e="fonize: 16sp5>

tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-size: 16px; line-height: normal; mso-spaceront-size: 16px; word-brea2le="f'果是uly: cou t-family: courier new; color: #000000; font-size: 16px; word-brea2le="f10.2.0.1 版本,'最后一个节点上执行pag时候会因为vippagbug抛出异常,'该节点上调用VIPCA图形化界面。ont-family: courier new; color: #000000;pe: 16px; line-height: 12pt; mso-spacerun: 'yes'; mso-font-kerning: 0e="fonize: 16sp5>

tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-size: 16px; line-height: normal; mso-spaceront-size: 16px; word-brea2le="f这样uly: cou t-family: courier new; color: #000000; font-size: 16px; word-brea2le="fgsd、ons和vip已经全部注册到OCR中。ont-family: courier new; color: #000000;pe: 16px; line-height: 12pt; mso-spacerun: 'yes'; mso-font-kerning: 0e="fonize: 16sp0>

< ONLINE ONLINE td1 mso-margin-bottom-alew; color: #000000;pe: 16px; line-height: 12pt; mso-spacerun: 'yes'; mso-font-kerning: 0e="fonize: 16sp0>

< ONLINE ONLINE td1 mso-margin-bottom-alew; color: #000000;pe: 16px; line-height: 12pt; mso-spacerun: 'yes'; mso-font-kerning: 0e="fonize: 16sp0>

< ONLINE ONLINE td1 mso-margin-bottom-alew; color: #000000;pe: 16px; line-height: 12pt; mso-spacerun: 'yes'; mso-font-kerning: 0e="fonize: 16sp0>

< ONLINE ONLINE td2 mso-margin-bottom-alew; color: #000000;pe: 16px; line-height: 12pt; mso-spacerun: 'yes'; mso-font-kerning: 0e="fonize: 16sp0>

< ONLINE ONLINE td2 mso-margin-bottom-alew; color: #000000;pe: 16px; line-height: 12pt; mso-spacerun: 'yes'; mso-font-kerning: 0e="fonize: 16sp0>

< ONLINE ONLINE td2 mso-margin-bottom-alew; color: #000000;pe: 16px; line-height: 12pt; mso-spacerun: 'yes'; mso-font-kerning: 0e="fonize: 16sp5> tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-size: 16px; line-height: normar: #000000cefont-size: 16px; word-brea2le="f6.使用oifcfg配置共有/私连网络 mso-margin-bottom-alttotrongoew; color: #000000;pe: 16px; line-height: 12pt; mso-spacerun: 'yes'; mso-font-kerning: 0e="fonize: 16sp0>

tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-size: 16px; line-height: normar: #000000cefont-size: 16px; word-brea2le="f7.注册其他资源到集群 mso-margin-bottom-alttotrongoew; color: #000000;pe: 16px; line-height: 12pt; mso-spacerun: 'yes'; mso-font-kerning: 0e="fonize: 16sp5> tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-size: 16px; line-height: normar: #000000cefont-size: 16px; word-brea2le="f(1)注册监听到集群 mso-margin-bottom-alttotrongotr: #000000; font-size: 16olor: #000000; font-size: 16px; word-brea2le="f: t-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; col
tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-size: 16px; line-height: normar: #000000cefont-size: 16px; word-brea2le="f修改监听配置文件lisntener.ora并编辑生成的cap文件(改名),更改其中用到的hostname.ily: courier nutom-alew; color: #000000;pe: 16px; line-height: 12pt; mso-spacerun: 'yes'; mso-font-kerning: 0e="fonize: 16sp0>

tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-size: 16px; line-height: normar: #000000cefont-size: 16px; word-brea2le="f或者使用rgin-botr: #000000; font-size: 16olor: #000000; font-size: 16px; word-brea2le="fnetca图形化界面来配置监听.ily: courier nutom-alew; color: #000000;pe: 16px; line-height: 12pt; mso-spacerun: 'yes'; mso-font-kerning: 0e="fonize: 16sp5> tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-size: 16px; line-height: normar: #000000cefont-size: 16px; word-brea2le="f(2)注册ASM实例到集群('果使用ASM)ily: courier nutom-alttotrongoew; color: #000000;pe: 16px; line-height: 12pt; mso-spacerun: 'yes'; mso-font-kerning: 0e="fonize: 16sp0>

tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-size: 16px; line-height: normar: #000000cefont-size: 16px; word-brea2le="f(3)注册instance/database到集群 mso-margin-bottom-alttotrongoew; color: #000000;pe: 16px; line-height: 12pt; mso-spacerun: 'yes'; mso-font-kerning: 0e="fonize: 16sp0>

tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont ftro: 宋体t-size: 16px; line-height: normar: #000000; font-size: 16px; word-brea2le="f验证: mso-margin-bottom-alew; color: #000000;pe: 16px; line-height: 12pt; mso-spacerun: 'yes'; mso-font-kerning: 0e="fonize: 16sp5> tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-size: 16px; line-height: normar: #000000; font-size: 16px; word-brea2le="ftd1-&glascrs_stat -tily: courier nutom-altr: #000000; font-size: 16olor: #000000; font-size: 16px; word-brea2le="f: t-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; col
tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-sName Type T coet State Hostily: courier nu t-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; col
tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-s————————————————————ily: courier nu t-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; col
tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-sora.demo.db applicat">< ONLINE ONLINE td1 mso-margin-bot t-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; col
tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-sora….o1.inst applicat">< ONLINE ONLINE td1 mso-margin-bot t-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; col
tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-sora….o2.inst applicat">< ONLINE ONLINE td2 mso-margin-bot t-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; col
tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-sora….SM1.asm applicat">< ONLINE ONLINE td1 mso-margin-bot t-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; col
tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-sora….D1.lsnr applicat">< ONLINE ONLINE td1 mso-margin-bot t-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; col
tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-sora.td1.gsd applicat">< ONLINE ONLINE td1 mso-margin-bot t-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; col
tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-sora.td1.>< ONLINE ONLINE td1 mso-margin-bot t-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; col
tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-sora.td1.vip applicat">< ONLINE ONLINE td1 mso-margin-bot t-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; col
tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-sora….SM2.asm applicat">< ONLINE ONLINE td2 mso-margin-bot t-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; col
tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-sora….D2.lsnr applicat">< ONLINE ONLINE td2 mso-margin-bot t-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; col
tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-sora.td2.gsd applicat">< ONLINE ONLINE td2 mso-margin-bot t-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; col
tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-sora.td2.>< ONLINE ONLINE td2 mso-margin-bot t-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; col
tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-size: 16px; line-height: normar: #000000; font-size: 16px; word-brea2le="fora.td2.vip applicat">< ONLINE ONLINE td2 mso-margin-bottom-alew; color: #000000;pe: 16px; line-height: 12pt; mso-spacerun: 'yes'; mso-font-kerning: 0e="fonize: 16sp5> tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-size: 16px; line-height: normar: #000000; font-size: 16px; word-brea2le="f登陆数据库检查utom-altr: #000000; font-size: 16olor: #000000; font-size: 16px; word-brea2le="fdb使用的内连接链路 mso-margin-bottom-alew; color: #000000;pe: 16px; line-height: 12pt; mso-spacerun: 'yes'; mso-font-kerning: 0e="fonize: 16sp5> tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-size: 16px; line-height: normar: #000000; font-size: 16px; word-brea2le="fSQL&glasselect * from v$cluster_interconnects;ont-family: courier ntr: #000000; font-size: 16olor: #000000; font-size: 16px; word-brea2le="f: t-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; col
tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-sNAME IP_ADDRESS IS_PUBLIC SOURCEily: courier nu t-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; col
tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-s————— —————- ——— ——————————-ily: courier nu t-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; col
tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-size: 16px; line-height: normar: #000000; font-size: 16px; word-brea2le="feth1 10.10.10.145 NO Oracle Cluster Repository mso-margin-bottom-alew; color: #000000;pe: 16px; line-height: 12pt; mso-spacerun: 'yes'; mso-font-kerning: 0e="fonize: 16sp5> tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-size: 16px; line-height: normar: #000000; font-size: 16px; word-brea2le="f'果使用了urier ntr: #000000; font-size: 16olor: #000000; font-size: 16px; word-brea2le="fOCFS作为共享文件格式,注意在启动数据库前检查相应OCFS的配置并确认ocfs是否能正常挂载使用。ont-family: courier new; color: #000000;pe: 16px; line-height: 12pt; mso-spacerun: 'yes'; mso-font-kerning: 0e="fonize: 16sp5> tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-size: 16px; line-height: normar: #000000; font-size: 16px; word-brea2le="f2.集群中IP地址pag更改 mso-margin-bottom-alttotrongotr: #000000; font-size: 16olor: #000000; font-size: 16px; word-brea2le="f: t-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; col
tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-sIP地址pag更改比hostnamepag更改相对容易一些。对于同网段pagpublic/private IP更改,无需进行p别操作。如果是不同网段,需要使用oifcfg处理。因为VIP是作为资源注册到OCR,所以任何VIPpag改动都需调用相关命令进行处理。:ly: courier nu t-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; col
tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont ftro: 宋体t-s以上处理都需要在集群资源停掉的基础上操作。:ly: courier nu t-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; col
tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-size: 16px; line-height: normar: #000000; font-size: 16px; word-brea2le="f以下是修改前后pagpublic/pricate/vipont-family: courier new; color: #000000;pe: 16px; line-height: 12pt; mso-spacerun: 'yes'; mso-font-kerning: 0e="fonize: 16sp5> tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-size: 16px; line-height: normar: #000000; font-size: 16px; word-brea2le="fPublic IP 10.194.129.145/146 –&glas10.194.128.145/146ont-family: courier ntr: #000000; font-size: 16olor: #000000; font-size: 16px; word-brea2le="f: t-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; col
tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-sPrivite IP 10.10.10.145/146 –&glas10.10.1.145/146ont-family: cou t-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; col
tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-size: 16px; line-heiize: 16olor: #000000; font-size: 16px; word-brea2le="fVirtual IP 10.194.129.147/148 –&glas10.194.128.147/148 ont-family: courier new; color: #000000;pe: 16px; line-height: 12pt; mso-spacerun: 'yes'; mso-font-kerning: 0e="fonize: 16sp5> tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-size: 16px; line-heiize: 16olor: #000000; font-size: 16px; word-brea2le="f1.停掉各资源 mso-margin-bottom-alttotrongotr: #000000; font-size: 16olor: #000000; font-size: 16px; word-brea2le="f: t-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; col
tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-s数据库正常关库,'余资源使用crs_stop 停止。ont-family: cou t-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; col
tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-s2.重新修改网卡ip/gateway/host文件等,重启网络等相关服务rgin-bottom-alttotrongotr: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; col
tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-s3.利用oifcfg更改public/private ipont-family: couritrongou t-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; col
tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont ftro: 宋体t-size: 16px; line-height: normar: #000000; font-size: 16px; word-brea2le="f查看当前使用rgin-botly: courier new; color: #000000;pe: 16px; line-height: 12pt; mso-spacerun: 'yes'; mso-font-kerning: 0e="fonize: 16sp5> tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-size: 16px; line-height: normar: #000000; font-size: 16px; word-brea2le="ftd1-&glasoifcfg getifont-family: courier ntr: #000000; font-size: 16olor: #000000; font-size: 16px; word-brea2le="f: t-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; col
tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-seth1 10.10.10.0 global cluster_interconnect:lyer nurier nu t-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; col
tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-size: 16px; line-height: normar: #000000; font-size: 16px; word-brea2le="feth0 10.194.129.0 global public ont-family: courier new; color: #000000;pe: 16px; line-height: 12pt; mso-spacerun: 'yes'; mso-font-kerning: 0e="fonize: 16sp5> tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont ftro: 宋体t-size: 16px; line-height: normar: #000000; font-size: 16px; word-brea2le="f删除当前ont-family: courier new; color: #000000;pe: 16px; line-height: 12pt; mso-spacerun: 'yes'; mso-font-kerning: 0e="fonize: 16sp5> tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-size: 16px; line-height: normar: #000000; font-size: 16px; word-brea2le="ftd1-&glasoifcfg delif -global eth0ont-family: courier ntr: #000000; font-size: 16olor: #000000; font-size: 16px; word-brea2le="f: t-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; col
tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-size: 16px; line-height: normar: #000000; font-size: 16px; word-brea2le="ftd1-&glasoifcfg delif -global eth1 ont-family: courier new; color: #000000;pe: 16px; line-height: 12pt; mso-spacerun: 'yes'; mso-font-kerning: 0e="fonize: 16sp5> tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont ftro: 宋体t-size: 16px; line-height: normar: #000000; font-size: 16px; word-brea2le="f重新添加ont-family: courier new; color: #000000;pe: 16px; line-height: 12pt; mso-spacerun: 'yes'; mso-font-kerning: 0e="fonize: 16sp5> tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-size: 16px; line-height: normar: #000000; font-size: 16px; word-brea2le="ftd1-&glasoifcfg setif -global eth0/10.194.128.0:public mso-margin-bottom-altr: #000000; font-size: 16olor: #000000; font-size: 16px; word-brea2le="f: t-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; col
tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-size: 16px; line-height: normar: #000000; font-size: 16px; word-brea2le="ftd1-&glasoifcfg setif -global eth1/10.10.1.0:cluster_interconnect mso-margin-bottom-alew; color: #000000;pe: 16px; line-height: 12pt; mso-spacerun: 'yes'; mso-font-kerning: 0e="fonize: 16sp5> tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-size: 16px; line-height: normar: #000000; font-size: 16px; word-brea2le="f4.更新注册到OCR中的vip配置(root用户)ily: courier nutom-alttotrongoew; color: #000000;pe: 16px; line-height: 12pt; mso-spacerun: 'yes'; mso-font-kerning: 0e="fonize: 16sp5> tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-size: 16px; line-height: normar: #000000; font-size: 16px; word-brea2le="f[root@td1 ~]#scrs_regist #0-update ora.td1.vip -osoi=eth0,ov=10.194.128.147,on=255.255.255.0ont-family: courier ntr: #000000; font-size: 16olor: #000000; font-size: 16px; word-brea2le="f: t-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; col
tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-size: 16px; line-height: normar: #000000; font-size: 16px; word-brea2le="f[root@td1 ~]#scrs_regist #0-update ora.td2.vip -osoi=eth0,ov=10.194.128.148,on=255.255.255.0 mso-margin-bottom-alew; color: #000000;pe: 16px; line-height: 12pt; mso-spacerun: 'yes'; mso-font-kerning: 0e="fonize: 16sp5> tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-size: 16px; line-height: normar: #000000; font-size: 16px; word-brea2le="f或者使用rgin-botr: #000000; font-size: 16olor: #000000; font-size: 16px; word-brea2le="f(root用户)ily: courier nutom-alew; color: #000000;pe: 16px; line-height: 12pt; mso-spacerun: 'yes'; mso-font-kerning: 0e="fonize: 16sp5> tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-size: 16px; line-height: normar: #000000; font-size: 16px; word-brea2le="f[root@td1 ~]#ssrvctl modifyspadeapps -nptd1 -As10.194.128.147/255.255.255.0/eth0ont-family: courier ntr: #000000; font-size: 16olor: #000000; font-size: 16px; word-brea2le="f: t-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; col
tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-size: 16px; line-height: normar: #000000; font-size: 16px; word-brea2le="f[root@td1 ~]#ssrvctl modifyspadeapps -nptd2 -As10.194.128.148/255.255.255.0/eth0 mso-margin-bottom-alew; color: #000000;pe: 16px; line-height: 12pt; mso-spacerun: 'yes'; mso-font-kerning: 0e="fonize: 16sp5> tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-size: 16px; line-height: normar: #000000; font-size: 16px; word-brea2le="f5.'果你使用了ocfs,修改ocfs配置文件(/etc/ocfs/cluster.conf),验证修改后是否可用rgin-botly: courier nttotrongotr: #000000; font-size: 16olor: #000000; font-size: 16px; word-brea2le="f: t-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; col
tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-s6.修改监听list ner配置文件ont-family: couritrongou t-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; col
tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-size: 16px; line-height: normar: #000000; font-size: 16px; word-brea2le="f7.启动集群各节点资源并验证ily: courier nutom-alttotrongoew; color: #000000;pe: 16px; line-height: 12pt; mso-spacerun: 'yes'; mso-font-kerning: 0e="fonize: 16sp5> tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-size: 16px; line-height: normar: #000000; font-size: 16px; word-brea2le="ftd1-&glascrs_start –all mso-margin-bottom-alew; color: #000000;pe: 16px; line-height: 12pt; mso-spacerun: 'yes'; mso-font-kerning: 0e="fonize: 16sp5> tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont ftro: 宋体t-size: 16px; line-height: normar: #000000; font-size: 16px; word-brea2le="f登陆数据库,检验内连接是否生效。ont-family: courier new; color: #000000;pe: 16px; line-height: 12pt; mso-spacerun: 'yes'; mso-font-kerning: 0e="fonize: 16sp5> tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-size: 16px; line-height: normar: #000000; font-size: 16px; word-brea2le="fSQL&glasselect * from v$cluster_interconnects;ont-family: courier ntr: #000000; font-size: 16olor: #000000; font-size: 16px; word-brea2le="f: t-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; col
tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-sNAME IP_ADDRESS IS_PUBLIC SOURCEily: courier nu t-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; col
tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-s————— —————- ——— —————————-ily: courier nu t-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; col
tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-size: 16px; line-height: normar: #000000; font-size: 16px; word-brea2le="feth1s10.10.1.145 NO Oracle Cluster Repository mso-margin-bottom-alew; color: #000000;pe: 16px; line-height: 12pt; mso-spacerun: 'yes'; mso-font-kerning: 0e="fonize: 16sp5> tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-size: 16px; line-height: normar: #000000; font-size: 16px; word-brea2le="f<三&gla.集群中节点的删除/添加ont-family: courier nttotrongotr: #000000; font-size: 16olor: #000000; font-size: 16px; word-brea2le="f: t-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; col
tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-s    同9i的节点删除/添加相比,10g对节点的添加和删除相对来说略显麻烦,但操作起来更加规范。ont-family: cou t-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; col
tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-size: 16px; line-height: normar: #000000; font-size: 16px; word-brea2le="f    因为集群件的存在,需调用一系列接口命令将资源从OCR中添加/删除,本文不再对该案例做详细描述,'体参见oracle官方联机文档RAC部分–Addcou and Deletcou Nodes and Instances on UNIX-Based Systems. mso-margin-bottom-alew; color: #000000;pe: 16px; line-height: 12pt; mso-spacerun: 'yes'; mso-font-kerning: 0e="fonize: 16sp5> tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-size: 16px; line-height: normar: #000000; font-size: 16px; word-brea2le="f<四&gla.升级与迁移ont-family: courier nttotrongotr: #000000; font-size: 16olor: #000000; font-size: 16px; word-brea2le="f: t-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; col
tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-s    RAC的迁移与升级并不比单实例复杂多少。对于一个rac新手来说,'思想上也无需觉得这是个很庞杂的事情,'然前提是你有足够的单实例方面的基础知识并对此深刻理解。ont-family: cou t-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; col
tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-s    比如,'用n> tyle="font-family: courier new; col
tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-s    '果你的迁移或升级有停机时间的限制,那大部分情况下重点的问题并不在于被操作对象是RAC架构,而在于'何制定你的MAA策略。比如你需要运用一些表空间传输或者高级复制/流等方面的特性来压缩停机时间,这也许因为是RAC架构而增加了整个施工的难度,但很多时候问题的重点并不在于此。:ly: courier nu t-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; col
<: under明<="fu t-fa000000;15e: 16px; line-height: 12pt; mso-spacerun: 'yes'; mso-font-kerning: 0明 tyle="ng: 0under明<: scoule="fu t-family: courier new; color: #000000; font-size:ff6px; word-brea2le="fhttp://www.easyora.net/blog/9i_rac_upgrade_10g_rac.htmlont-family: courier nttaargin-bottom-alew; color: #000000;pe: 16px; line-height: 12pt; mso-spacerun: 'yes'; mso-font-kerning: 0e="fonize: 16sp5> tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-size: 16px; line-height: normar: #000000; font-size: 16px; word-brea2le="f<五&gla.高可用架构:RAC+DGont-family: courier nttotrongotr: #000000; font-size: 16olor: #000000; font-size: 16px; word-brea2le="f: t-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; col
tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-s    '该说,rac+dg企业级的架构在高可用和灾备方面来说还是有相当大的市场。:ly: courier nu t-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; col
tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-s    '搭建与管理方面,rac(主)+DG(备)的过程与单实例的主备也无太大异同。需要注意以下方面(但不限于以下方面)::ly: courier nu t-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; col
tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-s1.log gap的检测问题ont-family: couritrongou t-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; col
tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-s    注意正确配置fal_server与fal_clic00p参数,'其是对于rac主库归档到各自节点上的情况下,standby端gap server需要将每个主库节点都涵盖进去。:ly: courier nu t-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; col
tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-s2.switchover/failover注意事项 mso-margin-bottotrongou t-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; col
tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-s    做任何切换的时候,需要将rac端只保留一个alive的实例,'余实例关闭后,'换步骤跟单节点dg基本一致。:ly: courier nu t-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; col
tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-s3.standby logfile问题ont-family: couritrongou t-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; col
tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-size: 16px; line-height: normar: #000000; font-size: 16px; word-brea2le="f    '果采用LGWR传输日志,需要备库端添加standby logfile日志。需要注意添加的standby logfile的thread要与主库一致。'果你的主库节点有3个实例,那需要添加3大组与rac主库相同thread号的备用日志,每个thread至少2组日志即可。ont-family: courier new; color: #000000;MsoNan><;"><;"><: widow-orphans"fonta color: #-alpt;autos"fonta colorze: 16-alpt;autos" align="leftamily: trongou t-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-size: 16px; line-height: normar: #000000; font-size: 16px; word-brea2le="f1.思路及等待事件说明ily: courier nutom-alttotrongoew; color: #000000;MsoNan><;"><: widow-orphans"fonta color: #-alpt;autos"fonta colorze: 16-alpt;autos" align="leftamily: t-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-size: 16px; line-height: normar: #000000; font-size: 16px; word-brea2le="f  鉴于RAC体系的复杂性,RAC的优化比单实例的优化给我们提出了更高的难度和要求。'部分情况下,'实例上的优化方法在RAC结构下同样适用。ont-family: courier new; color: #000000;MsoNan><;"><: widow-orphans"fonta color: #-alpt;autos"fonta colorze: 16-alpt;autos" align="leftamily: t-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-size: 16px; line-height: normar: #000000; font-size: 16px; word-brea2le="f  RAC优化的2个核心问题::ly: courier nurier new; color: #000000;MsoNan><;"><: widow-orphans"fonta color: #-alpt;autos"fonta colorze: 16-alpt;autos" align="leftamily: trongou t-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-size: 16px; line-height: normar: #000000; font-size: 16px; word-brea2le="f(1).减少shared pool的压力:减少对数据字典的争用,'少硬解析。ont-family: courier nttotrongoew; color: #000000;MsoNan><;"><: widow-orphans"fonta color: #-alpt;autos"fonta colorze: 16-alpt;autos" align="leftamily: t-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-size: 16px; line-height: normar: #000000; font-size: 16px; word-brea2le="f  因为row cache/library cache是全局的,频繁的数据字典争用/硬解析在RAC环境下会造成比单实例更严重的性能后果。ont-family: courier new; color: #000000;MsoNan><;"><: widow-orphans"fonta color: #-alpt;autos"fonta colorze: 16-alpt;autos" align="leftamily: trongou t-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-size: 16px; line-height: normar: #000000; font-size: 16px; word-brea2le="f(2).减少因Cache fus"><带来的全局块传输和争用ont-family: courier nttotrongoew; color: #000000;MsoNan><;"><: widow-orphans"fonta color: #-alpt;autos"fonta colorze: 16-alpt;autos" align="leftamily: t-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-size: 16px; line-height: normar: #000000; font-size: 16px; word-brea2le="f  频繁的Cache fus"><会带来一系列数据块上的全局争用。'何减少逻辑读,'少数据在实例之间共享传输,是RAC体系对应用设计和部署的新要求ont-family: courier new; color: #000000;MsoNan><;"><: widow-orphans"fonta color: #-alpt;autos"fonta colorze: 16-alpt;autos" align="leftamily: t-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-size: 16px; line-height: normar: #000000; font-size: 16px; word-brea2le="fCache fus"><性能是影响RAC系统性能的一个极为重要的方面。Avg global cache cr block receive time和avg global cache curr00p block receive time是cache fus"><的两个重要指标,以下是oracle给出的这两个指标的阈值情况::ly: courier nurier new; color:table#000000;MsoNan><-alpt;er5new; solid windowng: ylaontb000er-: #-alpt;er5new; solid windowng: ylaontb000er-ze: 16-alpt;er5new; solid windowng: ylb000er: windowng: 1; solids" valign=": #" width="255"lor: #000000;MsoNan><: widow-orphans" align="leftamilyyyyy: t-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; color: #000000; font-size: 16Times New Romans"; font-size: 16px; word-breafont-size: 16px; line-height: normar: #000000; font-size: 16px; word-bre9; colName:ly: courier nurier new;yyyy:colorw;yyy<: windowng: 1; solids b000er-ze: 16spwindowng: 1; solids paddcou-ze: 16spw; ylpaddcou-: #spw; ylpaddcou-left: 5.4; ylb000er-left: mediumont<=lpaddcou-ran><-alpt;er5new; solid windowng: ylaontb000er-: #-alpt;er5new; solid windowng: ylaontb000er-ze: 16-alpt;er5new; solid windowng: y" valign=": #" width="111"lor: #000000;MsoNan><: widow-orphans" align="leftamilyyyyy: t-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; color: #000000; font-size: 16Times New Romans"; font-size: 16px; word-breafont-size: 16px; line-height: normar: #000000; font-size: 16px; word-bre9; colLow #0Bound:ly: courier nurier new;yyyy:colorw;yyy<: windowng: 1; solids b000er-ze: 16spwindowng: 1; solids paddcou-ze: 16spw; ylpaddcou-: #spw; ylpaddcou-left: 5.4; ylb000er-left: mediumont<=lpaddcou-ran><-alpt;er5new; solid windowng: ylaontb000er-: #-alpt;er5new; solid windowng: ylaontb000er-ze: 16-alpt;er5new; solid windowng: y" valign=": #" width="120"lor: #000000;MsoNan><: widow-orphans"fontchar0.0000p-; u0pt;1r5news" align="leftamilyyyyy: t-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; color: #000000; font-size: 16Times New Romans"; font-size: 16px; word-breafont-size: 16px; line-height: normar: #000000; font-size: 16px; word-bre9; colTypicalont-family: courier new;yyyy:colorw;yyy<: windowng: 1; solids b000er-ze: 16spwindowng: 1; solids paddcou-ze: 16spw; ylpaddcou-: #spw; ylpaddcou-left: 5.4; ylb000er-left: mediumont<=lpaddcou-ran><-alpt;er5new; solid windowng: ylaontb000er-: #-alpt;er5new; solid windowng: ylaontb000er-ze: 16-alpt;er5new; solid windowng: y" valign=": #" width="96"lor: #000000;MsoNan><: widow-orphans" align="leftamilyyyyy: t-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; color: #000000; font-size: 16Times New Romans"; font-size: 16px; word-breafont-size: 16px; line-height: normar: #000000; font-size: 16px; word-bre9; colUpp #0Bound:ly: courier nurier new;yyyy:colorw;yyy<: windowng: 1; solids b000er-ze: 16spwindowng: 1; solids paddcou-ze: 16spw; ylpaddcou-: #spw; ylpaddcou-left: 5.4; ylb000er-left: windowng: 1; solids paddcou-ran><-alpt;er5new; solid windowng: ylaontb000er-: #-alpt;er5new; solid windowng: ylaontb000er-ze: 16-alpt;er5new; solid windowng: y" valign=": #" width="255"lor: #000000;MsoNan><: widow-orphans" align="leftamilyyyyy: t-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; color: #000000; font-size: 16Times New Romans"; font-size: 16px; word-breafont-size: 16px; line-height: normar: #000000; font-size: 16px; word-bre9; colAvg global cache cr block receive time(ms)ily: courier nutom-alew;yyyy:colorw;yyy<: windowng: 1; solids b000er-ze: 16spwindowng: 1; solids paddcou-ze: 16spw; ylpaddcou-: #spw; ylpaddcou-left: 5.4; ylb000er-left: mediumont<=lpaddcou-ran><-alpt;er5new; solid windowng: ylaontb000er-: #-alpt;er5new; solid windowng: ylaontb000er-ze: 16-alpt;er5new; solid windowng: y" valign=": #" width="111"lor: #000000;MsoNan><: widow-orphans" align="leftamilyyyyy: t-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; color: #000000; font-size: 16Times New Romans"; font-size: 16px; word-breafont-size: 16px; line-height: normar: #000000; font-size: 16px; word-bre9; col0.3ily: courier nutom-alew;yyyy:colorw;yyy<: windowng: 1; solids b000er-ze: 16spwindowng: 1; solids paddcou-ze: 16spw; ylpaddcou-: #spw; ylpaddcou-left: 5.4; ylb000er-left: mediumont<=lpaddcou-ran><-alpt;er5new; solid windowng: ylaontb000er-: #-alpt;er5new; solid windowng: ylaontb000er-ze: 16-alpt;er5new; solid windowng: y" valign=": #" width="120"lor: #000000;MsoNan><: widow-orphans" align="leftamilyyyyy: t-family: courier new; color: #000000; font-size: 16px; word-breafont 明<-family: courier new; color: #000000; font-size: 16Times New Romans"; font-size: 16px; word-breafont-size: 16px; line-height: normar: #000000; font-size: 16px; word-bre9; col4ily: courier nutom-alew;yyyy:colorw;yyy<: windowng: 1; solids b000er-ze: 16spwindowng: 1; solids paddcou-ze: 16spw; ylpaddcou-: #spw; ylpaddcou-left: 5.4; ylb000er-left: mediumont<=lpaddcou-ran><-alpt;er5new; solid windowng: ylaontb000er-: #-alpt;er5new; solid windowng: ylaontb000er-ze: 16-alpt;er5new; solid windowng: y" valign=": #" width="96"lor: #000000;MsoNan><: widow-orphans" align="leftamilyyyyy: t-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; color: #000000; font-size: 16Times New Romans"; font-size: 16px; word-breafont-size: 16px; line-height: normar: #000000; font-size: 16px; word-bre9; col12:ly: courier nurier new;yyyy:colorw;yyy<: windowng: 1; solids b000er-ze: 16spwindowng: 1; solids paddcou-ze: 16spw; ylpaddcou-: #spw; ylpaddcou-left: 5.4; ylb000er-left: windowng: 1; solids paddcou-ran><-alpt;er5new; solid windowng: ylaontb000er-: #-alpt;er5new; solid windowng: ylaontb000er-ze: 16-alpt;er5new; solid windowng: y" valign=": #" width="255"lor: #000000;MsoNan><: widow-orphans" align="leftamilyyyyy: t-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; color: #000000; font-size: 16Times New Romans"; font-size: 16px; word-breafont-size: 16px; line-height: normar: #000000; font-size: 16px; word-bre9; colAvg global cache curr00p block receive time(ms)ily: courier nutom-alew;yyyy:colorw;yyy<: windowng: 1; solids b000er-ze: 16spwindowng: 1; solids paddcou-ze: 16spw; ylpaddcou-: #spw; ylpaddcou-left: 5.4; ylb000er-left: mediumont<=lpaddcou-ran><-alpt;er5new; solid windowng: ylaontb000er-: #-alpt;er5new; solid windowng: ylaontb000er-ze: 16-alpt;er5new; solid windowng: y" valign=": #" width="111"lor: #000000;MsoNan><: widow-orphans"fontchar0.0000p-; u0pt;0r5news" align="leftamilyyyyy: t-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; color: #000000; font-size: 16Times New Romans"; font-size: 16px; word-breafont-size: 16px; line-height: normar: #000000; font-size: 16px; word-bre9; col0.3ily: courier nutom-alew;yyyy:colorw;yyy<: windowng: 1; solids b000er-ze: 16spwindowng: 1; solids paddcou-ze: 16spw; ylpaddcou-: #spw; ylpaddcou-left: 5.4; ylb000er-left: mediumont<=lpaddcou-ran><-alpt;er5new; solid windowng: ylaontb000er-: #-alpt;er5new; solid windowng: ylaontb000er-ze: 16-alpt;er5new; solid windowng: y" valign=": #" width="120"lor: #000000;MsoNan><: widow-orphans" align="leftamilyyyyy: t-family: courier new; color: #000000; font-size: 16px; word-breafont 明<-family: courier new; color: #000000; font-size: 16Times New Romans"; font-size: 16px; word-breafont-size: 16px; line-height: normar: #000000; font-size: 16px; word-bre9; col8ily: courier nutom-alew;yyyy:colorw;yyy<: windowng: 1; solids b000er-ze: 16spwindowng: 1; solids paddcou-ze: 16spw; ylpaddcou-: #spw; ylpaddcou-left: 5.4; ylb000er-left: mediumont<=lpaddcou-ran><-alpt;er5new; solid windowng: ylaontb000er-: #-alpt;er5new; solid windowng: ylaontb000er-ze: 16-alpt;er5new; solid windowng: y" valign=": #" width="96"lor: #000000;MsoNan><: widow-orphans" align="leftamilyyyyy: t-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; color: #000000; font-size: 16Times New Romans"; font-size: 16px; word-breafont-size: 16px; line-height: normar: #000000; font-size: 16px; word-bre9; col30:ly: courier nurier new;yyyy:colorw;yyy<;"><: widow-orphans"fonta color: #-alpt;autos"fonta colorze: 16-alpt;autos" align="leftamily: t-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-size: 16px; line-height: normar: #000000; font-size: 16px; word-brea2le="fRAC下的全局等待事件::ly: courier nurier new; color: #000000;MsoNan><;"><: widow-orphans"fonta color: #-alpt;autos"fonta colorze: 16-alpt;autos" align="leftamily: t-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-size: 16px; line-height: normar: #000000; font-size: 16px; word-brea2le="fSQL&glaselect * from v$ev00p_name where NAME like ‘gc%’ and WAIT_CLASS=’Cluster’;:ly: courier nurier new; color: #000000;MsoNan><;"><: widow-orphans"fonta color: #-alpt;autos"fonta colorze: 16-alpt;autos" align="leftamily: t-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-size: 16px; line-height: normar: #000000; font-size: 16px; word-brea2le="f10G R2下有40多个非空闲的全局等待时间,最常见的值得引起注意的等待事件'下::ly: courier nurier new; color: #000000;MsoNan><;"><: widow-orphans"fonta color: #-alpt;autos"fonta colorze: 16-alpt;autos" align="leftamily: trongou t-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-size: 16px; line-height: normar: #000000; font-size: 16px; word-brea2le="fgc curr00p/cr requestont-family: courier nttotrongoew; color: #000000;MsoNan><;"><: widow-orphans"fonta color: #-alpt;autos"fonta colorze: 16-alpt;autos" align="leftamily: t-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont ftro: 宋体t-size: 16px; line-height: normar: #000000; font-size: 16px; word-brea2le="f该等待事件表示资源从远程实例读取到本地实例所花费的时间。'现该事件'不能说明什么问题,'果等待时间过长,'能表示内联网络存在问题或者有严重的块争用。:ly: courier nurier new; color: #000000;MsoNan><;"><: widow-orphans"fonta color: #-alpt;autos"fonta colorze: 16-alpt;autos" align="leftamily: trongou t-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-size: 16px; line-height: normar: #000000; font-size: 16px; word-brea2le="fgc buff #0busyont-family: courier nttotrongoew; color: #000000;MsoNan><;"><: widow-orphans"fonta color: #-alpt;autos"fonta colorze: 16-alpt;autos" align="leftamily: t-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-size: 16px; line-height: normar: #000000; font-size: 16px; word-brea2le="fbuff #0busy waits在全局上的延伸。'现该等待时间一般'能是块的争用问题。:ly: courier nurier new; color: #000000;MsoNan><;"><: widow-orphans"fonta color: #-alpt;autos"fonta colorze: 16-alpt;autos" align="leftamily: trongou t-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-size: 16px; line-height: normar: #000000; font-size: 16px; word-brea2le="fEnquenue类ont-family: courier nttotrongoew; color: #000000;MsoNan><;"><: widow-orphans"fonta color: #-alpt;autos"fonta colorze: 16-alpt;autos" align="leftamily: t-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-size: 16px; line-height: normar: #000000; font-size: 16px; word-brea2le="fRAC中,'见的Enquenue有enq: HW &ndash00; nt00p"><;"><: widow-orphans"fonta color: #-alpt;autos"fonta colorze: 16-alpt;autos" align="leftamily: t-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-size: 16px; line-height: normar: #000000; font-size: 16px; word-brea2le="f  诸'gc curr00p-2way/3way.gc curr00p/cr grant等事件,这些事件'是提供了块传输和消息传输方面的细节或是结果,一般情况下无需太投入关注。:ly: courier nurier new; color: #000000;MsoNan><;"><: widow-orphans"fonta color: #-alpt;autos"fonta colorze: 16-alpt;autos" align="leftamily: trongou t-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-size: 16px; line-height: normar: #000000; font-size: 16px; word-brea2le="f2.性能诊断ont-family: courier nttotrongoew; color: #000000;MsoNan><;"><: widow-orphans"fonta color: #-alpt;autos"fonta colorze: 16-alpt;autos" align="leftamily: t-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-size: 16px; line-height: normar: #000000; font-size: 16px; word-brea2le="f  性能上的调整很难给出一个定式,但指导思想上'以实现很大方面的统一。:ly: courier nurier new; color: #000000;MsoNan><;"><: widow-orphans"fonta color: #-alpt;autos"fonta colorze: 16-alpt;autos" align="leftamily: t-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-size: 16px; line-height: normar: #000000; font-size: 16px; word-brea2le="f  AWR/ASH等报告'以作为RAC系统中一个强有力的性能采集和诊断工具。'单实例的报告相比,AWR中的RAC Stat"stics部分给我们提供了详细的GES、GCS性能采样,结合全局等待事件,'位集群问题上的症状。:ly: courier nurier new; color: #000000;MsoNan><;"><: widow-orphans"fonta color: #-alpt;autos"fonta colorze: 16-alpt;autos" align="leftamily: t-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-size: 16px; line-height: normar: #000000; font-size: 16px; word-brea2le="f'urier nu t-family: courier new; color: #000000; font-size: 16px; word-brea2le="fRAC结构下,Segm00p Stat"stics部分是我们更加需要注意的地方。'果你还是习惯使用STATSPACK来进行性能采集,'议至少将收集级别设置为7。该部分为我们提供了详细的Segm00p级别的活动情况,有助于我们'位全局的HOT table#/HOT .000x,'析全局资源排队争用的根源。:ly: courier nurier new; color: #000000;MsoNan><;"><: widow-orphans"fonta color: #-alpt;autos"fonta colorze: 16-alpt;autos" align="leftamily: t-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-size: 16px; line-height: normar: #000000; font-size: 16px; word-brea2le="f  要重视DBA_HIS开头的一系列视图的作用,这将帮我们'问题'位的更加细化,甚至定位到SQL级别。糟糕的SQL效率拖垮系统性能的案例比比皆是,这在RAC中往往更加'见。dba_h"st_active_sess_h"story '以作为很好的切入点,例'通过关联dba_h"st_sqlng: 获得执行文本,通过关联dba_h"st_sql_plan获得执行计划树等,有时候'直接找到造成等待事件的元凶。:ly: courier nurier new; color: #000000;MsoNan><;"><: widow-orphans"fonta color: #-alpt;autos"fonta colorze: 16-alpt;autos" align="leftamily: t-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-size: 16px; line-height: normar: #000000; font-size: 16px; word-brea2le="fRAC中'见的争用和解决方法::ly: courier nurier new; color: #000000;MsoNan><;"><;18><: widow-orphans"fonta color: #-alpt;autos"fonta colorze: 16-alpt;autos"fontl"st: l1 level1 lfo2s" align="leftamily: t-family: courier new; color: #000000; font-size: 16px; word-breafontolor: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont 明<-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-brea2le="fSequence and .000x0; nt00p"><:ly: courier nurier new; color: #000000;MsoNan><;"><: widow-orphans"fonta color: #-alpt;autos"fonta colorze: 16-alpt;autos" align="leftamily: t-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-size: 16px; line-height: normar: #000000; font-size: 16px; word-brea2le="f  Sequence是RAC中'易'起争用的一个地方,尤其是以sequence作索','高并发的多节点insert情况下极易'起索'块的争用以及CR副本的跨实例传输。ont-family: courier ntze: 16px; line-height: normar: #000000; font-size: 16px; word-brea2le="f: t-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; col
tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-size: 16px; line-height: normar: #000000; font-size: 16px; word-brea2le="f需要尽量增大Sequence的cache值并设置序列为no000er。:ly: courier nurier new; color: #000000;MsoNan><;"><;18><: widow-orphans"fonta color: #-alpt;autos"fonta colorze: 16-alpt;autos"fontl"st: l1 level1 lfo2s" align="leftamily: t-family: courier new; color: #000000; font-size: 16px; word-breafontolor: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont 明<-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-brea2le="fundo block ; nsi0erat"><;"><: widow-orphans"fonta color: #-alpt;autos"fonta colorze: 16-alpt;autos" align="leftamily: t-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-size: 16px; line-height: normar: #000000; font-size: 16px; word-brea2le="f  RAC下CR的构造比单实例成本要高,'果一个block中的活动事务分布在几个实例上,需要将几个实例上的undo合并构造所需要的CR,'其是高并发的有索'键的插入,'易造成undo block的争用。:ly: courier nurier new; color: #000000;MsoNan><;"><: widow-orphans"fonta color: #-alpt;autos"fonta colorze: 16-alpt;autos" align="leftamily: t-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont ftro: 宋体t-size: 16px; line-height: normar: #000000; font-size: 16px; word-brea2le="f尽量使用小事务处理。:ly: courier nurier new; color: #000000;MsoNan><;"><;18><: widow-orphans"fonta color: #-alpt;autos"fonta colorze: 16-alpt;autos"fontl"st: l1 level1 lfo2s" align="leftamily: t-family: courier new; color: #000000; font-size: 16px; word-breafontolor: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont 明<-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-brea2le="fHW ; nsi0erat"><;"><: widow-orphans"fonta color: #-alpt;autos"fonta colorze: 16-alpt;autos" align="leftamily: t-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-size: 16px; line-height: normar: #000000; font-size: 16px; word-brea2le="f  跨节点的高并发insert会造成高水位线的争用,采用更大的g: 00p/采用ASSM和'区技术能减缓这一争用。:ly: courier nurier new; color: #000000;MsoNan><;"><;18><: widow-orphans"fonta color: #-alpt;autos"fonta colorze: 16-alpt;autos"fontl"st: l1 level1 lfo2s" align="leftamily: t-family: courier new; color: #000000; font-size: 16px; word-breafontolor: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont 明<-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-brea2le="fHot Block:ly: courier nurier new; color: #000000;MsoNan><;"><: widow-orphans"fonta color: #-alpt;autos"fonta colorze: 16-alpt;autos" align="leftamily: t-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-size: 16px; line-height: normar: #000000; font-size: 16px; word-brea2le="f  全局热点块问题'RAC系统的影响巨大,'量减少块跨实例的并发更改,适当采用'区'以缓解该争用。:ly: courier nurier new; color: #000000;MsoNan><;"><: widow-orphans"fonta color: #-alpt;autos"fonta colorze: 16-alpt;autos" align="leftamily: t-family: courier new; color: #000000; font-size: 16px; word-breafont 明 tyle="font-family: courier new; color: #000000; font-size: 16olor: #000000; font-size: 16px; word-breafont-size: 16px; line-height: normar: #000000; font-size: 16px; word-brea2le="f  一个良好的应用设计是RAC发挥功力的重要前提,根据不同的节点部署不同的应用,能有效的减少全局资源的争用,'RAC性能的稳定也相当重要。:br /lor:br /lor:rier nttoer nurier new; color:hr /l:hr /lor: f onolor:div16px; line-height: normar: #000000; font-size: 16px; word-brea5g: 0.hitex;amilyy集群概念介绍ily:/h2milw; cdivlor:div16px; line-height: normar: #000000; font-size: 16px; word-brea5g: 0.hitex;amilyy集群术语须知ily:/h3milw; cdivlor:p16px; line-height: normar: #000000; font-size: 16px; word-brea5g: 0明<; span>x;lpaddcou/s">x;loverflow: hid000; visibility: hid000;amilyyx;amilyy什么是集群ily:/h2milw; cdivlor: #6px; line-height: normar: #000000; font-size: 16px; word-brea5g: 0明 Availability Cluster)。w; color: #6px; line-height: normar: #000000; font-size: 16px; word-brea5g: 0明 Perfan> Perfan><; span>x;lpaddcou/s">x;loverflow: hid000; visibility: hid000;amilyyx;amilyy为什么搭建数据库集群ily:/h2milw; cdivlor: #6px; line-height: normar: #000000; font-size: 16px; word-brea5g: 0明xp">xp">xp3">x;lpaddcou/s">x;ll"st-6px; t;nt<=l.hitex;lpaddcou/s">x;ll"st-6px; -typbredisc;amilyyl  如何提高处理速','现数据库的均衡负载。:lem>ew;y clilor:li16px; line-height: normar: #000000; font-size: 16px; word-breafont a colosp">x;lpaddcou/s">x;ll"st-6px; -typbredisc;amilyyl  如何保证数据库的可用性、数据安全性、以及如何'现数据集群可扩性。:lem>ew;y clilor:li16px; line-height: normar: #000000; font-size: 16px; word-breafont a colosp">x;lpaddcou/s">x;ll"st-6px; -typbredisc;amilyyl  怎么综合解决这些问题成为众多企业关注的焦点。:lem>ew;y clilorw; cullor: #6px; line-height: normar: #000000; font-size: 16px; word-brea5g: 0明<; span>x;lpaddcou/s">x;loverflow: hid000; visibility: hid000;amilyyx;amilyy数据库集群的分类ily:/h2milw; cdivlor: #6px; line-height: normar: #000000; font-size: 16px; word-brea5g: 0明xp">xp">xp3">x;lpaddcou/s">x;ll"st-6px; t;nt<=l.hitex;lpaddcou/s">x;ll"st-6px; -typbredisc;amilyyl  负载均衡集群(Load Balance Cluster,LBC)侧重于数据库的横向扩展,提升数据库的性能。:lem>ew;y clilor:li16px; line-height: normar: #000000; font-size: 16px; word-breafont a colosp">x;lpaddcou/s">x;ll"st-6px; -typbredisc;amilyyl  高可用性集群(Han> Availability Cluster,HAC)侧重保证数据库'用持续不断。'部分的数据库集群侧重与此。:lem>ew;y clilor:li16px; line-height: normar: #000000; font-size: 16px; word-breafont a colosp">x;lpaddcou/s">x;ll"st-6px; -typbredisc;amilyyl  高安全性集群(Han> Secar:ty Cluster,HSC)侧重于容灾。:lem>ew;y clilorw; cullor: #6px; line-height: normar: #000000; font-size: 16px; word-brea5g: 0明<; span>x;lpaddcou/s">x;loverflow: hid000; visibility: hid000;amilyyx;amilyy'扩展的分布式数据库架构ily:/h2milw; cdivlor: #6px; line-height: normar: #000000; font-size: 16px; word-brea5g: 0明负载均衡和'用透明切块(:lem>TAF:lem>):lem>,'最大的优'在于对'用完'透明:lem>,'用无需修改便可切换到RAC 集群。但是RAC 的可扩展能力有限,首先因为整个集群都依赖于底层的共享存储,所以共享存储的 oem>I/O onem>能力和可用性决定了整个集群的可以提供的能力:lem>,'于 I/O 密集型的应用,这样的机制决定后续扩容只能是 Scale up(向上扩展)类型,'于硬件成本、开发人员的要求、维护成本都相对比较高。Oracle显然也意识到了这个问题,' Oracle 的 MAA(Maximum Availability Architecture)架构中,采用 ASM 来整合多个存储设备的能力,使得 RAC 底层的共享存储设备具备线性扩展的能力,整个集群不再依赖于大型存储的处理能力和可用性。w; color: #6px; line-height: normar: #000000; font-size: 16px; word-brea5g: 0明随着节点数的不断增加,节点间通信的成本也会随之增加:lem>,'到某个限'时,增加节点'能不会再带来性能上的提高,甚至可能造成性能下降。这个问题的主要原因是 Oracle RAC 对'用透明,'用可以连接集群中的任意节点进行处理,'不同节点上的应用争用资源时,RAC 节点间的通信开销会严重影响集群的处理能力。所以对于使用 ORACLE RAC 有以下两个建议:w; color:ul#6px; line-height: normar: #000000; font-size: 16px; word-brea5g: 0a colosp">xp">xp">xp3">x;lpaddcou/s">x;ll"st-6px; t;nt<=l.hitex;lpaddcou/s">x;ll"st-6px; -typbredisc;amilyyl  节点间通信使用高速互联网络;:lem>ew;y clilor:li16px; line-height: normar: #000000; font-size: 16px; word-breafont a colosp">x;lpaddcou/s">x;ll"st-6px; -typbredisc;amilyyl  尽'能'不同的'用分布在不同的节点上。:lem>ew;y clilorw; cullor: #6px; line-height: normar: #000000; font-size: 16px; word-brea5g: 0明<: nt<=lpaddcou/s1>xp3>x;a href="http://baike.baidu.com/view/8028.htm" t coet="_blank">联机事务处理i/an系统),Oracle RAC 更多情况下用来提高可用性,而不是为了提高扩展性。w; color: #6px; line-height: normar: #000000; font-size: 16px; word-brea5g: 0明管理节点onem>(ndb_mgmd):lem>,处理节点(mysqld):lem>和存储节点(:lem>ndbd)组 成,不存在一个共享的存储设备。MySQL cluster 主要利用了 NDB 存储引擎来实现,NDB 存储引擎是一个内存式存储引擎,要求数据必须'部加载到内存之中。数据被自动分布在集群中的不同存 储节点上,每个存储节点只保存'整数据的一个分片(fragm00p)。'时,用户可以设置同一份数据保存'多个不同的'储节点上,以保证单点故障不会造 成数据丢失。MySQL cluster 主要由 3 各部分组成:w; color:ul#6px; line-height: normar: #000000; font-size: 16px; word-brea5g: 0a colosp">xp">xp">xp3">x;lpaddcou/s">x;ll"st-6px; t;nt<=l.hitex;lpaddcou/s">x;ll"st-6px; -typbredisc;amilyyl  SQL 服务器节点onem>ew;y clilor:li16px; line-height: normar: #000000; font-size: 16px; word-breafont a colosp">x;lpaddcou/s">x;ll"st-6px; -typbredisc;amilyyl  NDB 数据存储节点onem>ew;y clilor:li16px; line-height: normar: #000000; font-size: 16px; word-breafont a colosp">x;lpaddcou/s">x;ll"st-6px; -typbredisc;amilyyl  监控和管理节点onem>ew;y clilorw; cullor: #6px; line-height: normar: #000000; font-size: 16px; word-brea5g: 0明xp">xp">xp3">x;lpaddcou/s">x;ll"st-6px; t;nt<=l.hitex;lpaddcou/s">x;ll"st-6px; -typbredisc;amilyyl   NDB(“NDB” 是一种“内存中”的<: nt<=lpaddcou/s1>xp3>x;a href="http://baike.baidu.com/view/1238930.htm" t coet="_blank">存储引擎i/an,'具有可用性高和<: nt<=lpaddcou/s1>xp3>x;a href="http://baike.baidu.com/view/4138648.htm" t coet="_blank">数据一致性i/an好的特点。) 存储引擎必须要求数据全部加载到内存之中,限制比较大,但是目前 NDB 新版本对此做了改进,'许只'内存中加 载索'数据,数据可以保存'磁盘上。:lem>ew;y clilor:li16px; line-height: normar: #000000; font-size: 16px; word-breafont a colosp">x;lpaddcou/s">x;ll"st-6px; -typbredisc;amilyyl  目前的 MySQL cluster 的性能还不理想,'为数据是按照主键 hash 分布到不同的'储节点上,'果应用不是通过主键去获取数据的话,'须'所有的'储节点上扫描, 返回结果到处理节点上去处理。而且,'操作需要同时'多份数据到不同的'储节点上,'节点间的网络要求很高。:lem>ew;y clilorw; cullor: #6px; line-height: normar: #000000; font-size: 16px; word-brea5g: 0明读'分离是架构分布式系统的一个重要思想。不少系统整体处理能力并不能同业务的增长保持同步,'此势必会带来瓶颈,单纯的升级硬件并不能一劳永逸。针对业务类型特点,需要从架构模式进行一系列的调整,比如业务模块的分割,数据库的拆分等等。集中'和'布式是两个对立的模式,不同行业的应用特点也'定了架构的思路。如互联网行业中一些门户站点onem>,'于技术'成本等方面考虑,更多的采用'源的数据库产品(如 MYSQonem>L),由于大部分是典型的读''少的请求,'此为 MYSQL 及其复制技术'行其道提供了条件。而相对一些传统密集交易型的行业,比如电信业、金融业等:lem>,考虑到单点处理能力和可靠性、稳定性等问题,'能更多的采用'用数据库,比如DB2:lem>、Oracle onem>等。就数据库'面来讲,大部分传统行业核心库采用集中'的架构思路,采用高配的'型机做主机载体,因为数据库本身和主机强大的处理能力,数据库端一般能支撑业务的运转,'此,Oracle 读'分离'的架构相对MYSQL 来讲,相对会少。读'分离架构利用了数据库的复制技术,'读' '分布在不同的处理节点上,从而达到提高可用性和扩展性的目的。最通常的做法是'用 MySQL Replicat">< 技术,Master DB 承担'操作,'数据变化复制到多台 Slave DB上,'承担读的操作。这种架构适合 read-intensive 类型的应用,通过增加 Slave DB 的数量,读的性能'以线性增长。为了避免 Master DB 的单点故障,集群一般都会采用两台 Master DB 做双机热备,所以整个集群的读''的可用性都非常高。除了 MySQL,Oracle onem>从 11g onem>开始提供 Active Standby 的功能,也具备了实现读'分离架构的基础onem>。读'分离架构的缺陷在于,不管是 Master 还是 Slave,每个节点都'须保存'整的数据,' 果在数据量很大的情况下,集群的扩展能力还是受限于单个节点的存储能力,而且对于 Writexp">xp">xp3">x;lpaddcou/s">x;ll"st-6px; t;nt<=l.hitex;lpaddcou/s">x;ll"st-6px; -typbredisc;amilyyl  Cons"stency(一致性), 数据一致更新,所有数据变动都是同步的:lem>ew;y clilor:li16px; line-height: normar: #000000; font-size: 16px; word-breafont a colosp">x;lpaddcou/s">x;ll"st-6px; -typbredisc;amilyyl  Availability(可用性), 好的响应性能:lem>ew;y clilor:li16px; line-height: normar: #000000; font-size: 16px; word-breafont a colosp">x;lpaddcou/s">x;ll"st-6px; -typbredisc;amilyyl  Partit">< tolerance('区'错性) 可靠性:lem>ew;y clilorw; cullor: #6px; line-height: normar: #000000; font-size: 16px; word-brea5g: 0明xp">xp">xp3">x;lpaddcou/s">x;ll"st-6px; t;nt<=l.hitex;lpaddcou/s">x;ll"st-6px; -typbredisc;amilyyl  Atomicity 原子性:一个事务中所有操作都'须全部完成,要么全部不完成。:lem>ew;y clilor:li16px; line-height: normar: #000000; font-size: 16px; word-breafont a colosp">x;lpaddcou/s">x;ll"st-6px; -typbredisc;amilyyl  Cons"stency 一致性. '事务开始或结束时,数据库'该'一致状态。:lem>ew;y clilor:li16px; line-height: normar: #000000; font-size: 16px; word-breafont a colosp">x;lpaddcou/s">x;ll"st-6px; -typbredisc;amilyyl  Isolat">< 隔离'. 事务将假定只有它自己在操作数据库,彼此不知晓。:lem>ew;y clilor:li16px; line-height: normar: #000000; font-size: 16px; word-breafont a colosp">x;lpaddcou/s">x;ll"st-6px; -typbredisc;amilyyl  Durability. 一旦事务完成,就不能返回。:lem>ew;y clilorw; cullor: #6px; line-height: normar: #000000; font-size: 16px; word-brea5g: 0明 可用性,也就是纯粹的高性能,那么就要以一致性或'错性为牺牲,BASE 思想的方案在性能上还是有潜力可挖的。w; color:ul#6px; line-height: normar: #000000; font-size: 16px; word-brea5g: 0a colosp">xp">xp">xp3">x;lpaddcou/s">x;ll"st-6px; t;nt<=l.hitex;lpaddcou/s">x;ll"st-6px; -typbredisc;amilyyl  共同点:都是关系数据库 SQL 以外的可选方案,逻辑随着数据分布,任何模型都'以自己持久化,'数据处理和数据存储分离,'读''分离,'储可以是异步或'步,'决于对一致性的要求程度。w;y clilor:li16px; line-height: normar: #000000; font-size: 16px; word-breafont a colosp">x;lpaddcou/s">x;ll"st-6px; -typbredisc;amilyyl  不同点:NOSQL 之类的 Key-Value 存储产品是'关系数据库头碰头的产品 BOX,'以适合非 Java 如 PHP RUBY等领域,是一种可以拿来就用的产品,而领域模型 + 分布式缓存 + 存储是一种复杂的架构解决方案,不是产品,但这种方式更灵活,更应该是架构师'须掌握的。w;y clilorw; cullor: #6px; line-height: normar: #000000; font-size: 16px; word-brea5g: 0明x;amilyyOracle的三种高可用集群方案ily:/h3milw; cdivlor: #6px; line-height: normar: #000000; font-size: 16px; word-brea5g: 0明:strong>1 RAC(Real Applicat">< Clusters):lstrong>:lsstn>ew; color: #6px; line-height: normar: #000000; font-size: 16px; word-brea5g: 0明ew; color: #6px; line-height: normar: #000000; font-size: 16px; word-brea5g: 0明:strong>2 Data Guard.(最主要的'能是冗灾):lstrong>:lsstn>ew; color: #6px; line-height: normar: #000000; font-size: 16px; word-brea5g: 0明ew; color: #6px; line-height: normar: #000000; font-size: 16px; word-brea5g: 0明3 MAA:lsstn>:lstrong>ew; color: #6px; line-height: normar: #000000; font-size: 16px; word-brea5g: 0明ew; color: #6px; line-height: normar: #000000; font-size: 16px; word-brea5g: 0明<; span>x;lpaddcou/s">x;loverflow: hid000; visibility: hid000;amilyyx;amilyyRAC概述ily:/h2milw; cdivlor: #6px; line-height: normar: #000000; font-size: 16px; word-brea5g: 0明<; span>x;lpaddcou/s">x;loverflow: hid000; visibility: hid000;amilyyx;amilyyRAC 集成集群件管理ily:/h2milw; cdivlor: #6px; line-height: normar: #000000; font-size: 16px; word-brea5g: 0明集群连接、消息处理服务和锁定、集群控制和恢复:lem>,以及一个工作负载管理:lem>框架(将'下文探讨)。Oracle RAC 10g 的集成集群件管理具有以下优':w; color: #6px; line-height: normar: #000000; font-size: 16px; word-brea5g: 0明<; span>x;lpaddcou/s">x;loverflow: hid000; visibility: hid000;amilyyx;amilyyRAC 的体系结构ily:/h2milw; cdivlor: #6px; line-height: normar: #000000; font-size: 16px; word-brea5g: 0明ew; color: #6px; line-height: normar: #000000; font-size: 16px; word-brea5g: 0明分散每一台服务器的工作量onem>。硬件上至少需要两台以上的服务器,而且还需要一个共享存储设备;同时还需要两类软件,一类是集群软件,另外一类就是 Oracle 数据库中的 RAC 组件。同时所有服务器上的 OS 都'该是同一类 OS,根据负载均衡的配置策略,'一个客户端'送请求到某一台服务的 l"stener 后,这台服务器根据负载均衡策略,会把请求发送给本机的 RAC组件'理,也可能会发送给另外一台服务器的 RAC 组件处理,'理完请求后,RAC 会通过群集软件来访问共享存储设备。逻辑结构上看,每一个参加群集的节点有一个独立的实例,这些实例访问同一个数据库。节点之间通过集群软件的通信层(Communicat">< Layer)来进行通信。同时为了减少 I/O 的消耗,'在一个全局缓存服务,'此每一个数据库的实例,都保留了一份相同的数据库 cache。RAC 中的特点如下:w; color:ul#6px; line-height: normar: #000000; font-size: 16px; word-brea5g: 0a colosp">xp">xp">xp3">x;lpaddcou/s">x;ll"st-6px; t;nt<=l.hitex;lpaddcou/s">x;ll"st-6px; -typbredisc;amilyyl   每一个节点的实例都有自己的 SGA;w;y clilor:li16px; line-height: normar: #000000; font-size: 16px; word-breafont a colosp">x;lpaddcou/s">x;ll"st-6px; -typbredisc;amilyyl   每一个节点的实例都有自己的后台进程w;y clilor:li16px; line-height: normar: #000000; font-size: 16px; word-breafont a colosp">x;lpaddcou/s">x;ll"st-6px; -typbredisc;amilyyl   每一个节点的实力都有自己的 redo logsw;y clilor:li16px; line-height: normar: #000000; font-size: 16px; word-breafont a colosp">x;lpaddcou/s">x;ll"st-6px; -typbredisc;amilyyl   每一个节点的实例都有自己的 undo 表空间w;y clilor:li16px; line-height: normar: #000000; font-size: 16px; word-breafont a colosp">x;lpaddcou/s">x;ll"st-6px; -typbredisc;amilyyl   所有节点都'享一份 datafiles 和 c; wrolfilesw;y clilorw; cullor:div16px; line-height: normar: #000000; font-size: 16px; word-brea5g: 0.hite<; span>x;lpaddcou/s">x;loverflow: hid000; visibility: hid000;amilyyx;amilyyRAC 的结构组成和机制ily:/h2milw; cdivlor: #6px; line-height: normar: #000000; font-size: 16px; word-brea5g: 0明<(高缓存合并)技术,节点'经'出的数据块更新后没有写入磁盘前,可以被另外一个节点更新,然'以最后的版本写入磁盘。在 OPS 中,节点间的数据请求需要先'数据写入磁盘,然'发出请求的节点才可以读'该数据。使用 Cache Fus">< 时,RAC 的各个节点间数据缓冲区通过高速、低延迟的内部网络进行数据块的传输。下图是一个典型的 RAC 对'服务的示意图,一个 Oracle RAC Cluster 包含了如下的部分w; color: #6px; line-height: normar: #000000; font-size: 16px; word-brea5g: 0明ew; color:ol#6px; line-height: normar: #000000; font-size: 16px; word-brea5g: 0paddcou-lefx;lpaddcou/s">x;ll"st-6px; -typbredeci>x;lpaddcou/s">x;ll"st-6px; -typbredeci><。w;y clilor:li16px; line-height: normar: #000000; font-size: 16px; word-breafont a colosp">x;lpaddcou/s">x;ll"st-6px; -typbredeci>x;lpaddcou/s">x;ll"st-6px; -typbredeci><; span>x;lpaddcou/s">x;loverflow: hid000; visibility: hid000;amilyyx;amilyyRAC 后台进程w;y ch2milw; cdivlor: #6px; line-height: normar: #000000; font-size: 16px; word-brea5g: 0明ew; color: #6px; line-height: normar: #000000; font-size: 16px; word-brea5g: 0明节点间的网络心跳(Network Heartbeatonem>):lem>:可以想象成节点间定时的发送 ping 包检测节点状态,'果能'规定时间内收到回',就认为对方状态正常。w; color: #6px; line-height: normar: #000000; font-size: 16px; word-brea5g: 0明通过控制文件的磁盘心跳(c; wrolfile spartbeatonem>):lem>:每个节点的 CKPT 进程每隔 3 秒钟更新一次控制文件的数据块,这个数据块叫做 Checkpoint Progress Record,控制文件是共享的,所以实例间可以互相检查对方是否及时更新来判断。w; color: #6px; line-height: normar: #000000; font-size: 16px; word-brea5g: 0明LMDonem>(the global enqueue service daemononem>,锁管理守护进程):lem>是一个后台进程,也被称为全局的队列服务守护进程,'为负责对资源的管理要求来控制访问块'全局队列。在每一个实例的内部,LMD 进程管理输入的远程资源请求(即来自集群中其他实例的锁请求)。此外,它还负责死锁检查和监控转换超时。w; color: #6px; line-height: normar: #000000; font-size: 16px; word-brea5g: 0明LCKonem>(the lock processonem>,锁进程):lem>管理非缓存融合,锁请求是本地的资源请求。LCK 进程管理共享资源的'例的资源请求和跨实例调用操作。在恢复过程中它建立一个无效锁元素的列表,并验证锁的元素。由于处理过程中的 LMS 锁管理的首要职能,只有一个单一的 LCK 进程'在每个实例中。w; color: #6px; line-height: normar: #000000; font-size: 16px; word-brea5g: 0明 DIAGonem>(the diagnosability daemononem>,诊断守护进程):lem>负责捕获 RAC 环境中进程'败的相关信息。''跟踪信息写出用于'败分析,DIAG 产生的信息在与 Oracle Support 技术合作来寻找导致'败的原因方面是非常有用的。每个实例仅需要一个 DIAG 进程。w; color: #6px; line-height: normar: #000000; font-size: 16px; word-brea5g: 0明GSDonem>(the global service daemononem>,全局服务进程)onem>与 RAC 的管理工' dbca、srvctl、oem 进行交互,用来完成'例的启动'闭等管理事务。为了保证这些管理工'运行正常'须在所有的节点上先start gsd,'且一个 GSD 进程支持在一个节点的'个 rac.gsd 进程位ORACLEHOME/bin目录下,'log文件为x;llefx;lclip/srect(1px;1px;1px;1px); -webkit-user-selectt;nt<=lposit"><:16patic;lpaddcou/s">x;lborder/s">x;ldispla noin明<:1nt<=la colosp">x;lvertical0align: 0g: 0明ORACLEHOME/bin目录下,'log文件为ORACLE_HOME/srvm/log/gsdaemon.log。GCS 和 GES 两个进程负责通过全局资源目录(Global Resmarce Directory GRD)维护每个数据的文件和缓存块的状态信息。'某个实例访问数据并缓存了数据之后,集群中的其他实例也会获得一个对'的块镜像,这样其他实例'访问这些数据是就不需要再去读盘了,而是直接读' SGA 中的缓存。GRD '在于每个活动的 instance 的内存结构中,这个特点造成 RAC 环境的 SGA 相对于单实例数据库系统的 SGA 要大。'他的进程和内存结构都跟单实例数据库差别不大。w; color:div16px; line-height: normar: #000000; font-size: 16px; word-brea5g: 0.hite<; span>x;lpaddcou/s">x;loverflow: hid000; visibility: hid000;amilyyx;amilyyRAC 共享存储w;y ch2milw; cdivlor: #6px; line-height: normar: #000000; font-size: 16px; word-brea5g: 0明x;lpaddcou/s">x;ll"st-6px; -typbredeci>x;lpaddcou/s">x;ll"st-6px; -typbredeci>x;lpaddcou/s">x;ll"st-6px; -typbredeci>x;lpaddcou/s">x;ll"st-6px; -typbredeci>x;lpaddcou/s">x;ll"st-6px; -typbredeci><; span>x;lpaddcou/s">x;loverflow: hid000; visibility: hid000;amilyyx;amilyyRAC 数据库''实例数据库的区别w;y ch2milw; cdivlor: #6px; line-height: normar: #000000; font-size: 16px; word-brea5g: 0明<(缓存融合)技术,RAC 在各个节点之间同步 SGA 中的缓存信息达到提高访问速度的效果也保证了一致性。w; color:h216px; line-height: normar: #000000; font-size: 16px; word-bre21ont 明x;".hite(一) SCN:lsstn>ew; color: #6px; line-height: normar: #000000; font-size: 16px; word-brea5g: 0明<-Block 都是依赖 SCN 实现。在 RAC 中,有 GCS 负责全局维护 SCN 的产生,缺省用的是 Lamport SCN 生成算法,该算法大致'理是: 在所有节点间的通信内容中都携带 SCN, 每个节点把接收到的 SCN 和本机的 SCN 对比,'果本机的 SCN 小,则调整本机的 SCN 和接收的一致,'果节点间通信不多,还会主动地定期相互通报。 故即使节点处于 Idle 状态,还是会有一些 Redo log 产生。 还有一个广播算法(Broadcast),这个算法是在每个 Commit 操作之后,节点要想其他节点'播 SCN,虽然这种方式会对系统造成一定的负载,但是确保每个节点在 Commit 之后都能立即查看到 SCN.这两种算法各有优缺点,Lamport 虽然负载小,但是节点间会有延迟,'播虽然有负载,但是没有延迟。Oracle 10g RAC 缺省选用的是 BroadCast 算法,可以从 alert.log 日志中看到相关信息:Picked broadcast on0; mmit scheme to generate SCNSw; color: #6px; line-height: normar: #000000; font-size: 16px; word-brea5g: 0明(二) RAC 的 GES/GCS 原理:lsstn>ew; color: #6px; line-height: normar: #000000; font-size: 16px; word-brea5g: 0明< 的机制。被 GCS 和 GES 管理的块'锁叫做资源。对这些资源的访问必须在群集的多个实例中进行协调。这个协调在实例层面和数据库层面都有发生。实例层次的资源协调叫做本地资源协调;数据库层次的协调叫做全局资源协调。w; color: #6px; line-height: normar: #000000; font-size: 16px; word-brea5g: 0明<; span>x;lpaddcou/s">x;loverflow: hid000; visibility: hid000;amilyyx;amilyyClusterWare 架构w;y ch2milw; cdivlor: #6px; line-height: normar: #000000; font-size: 16px; word-brea5g: 0明x;".hitex;".hitex;".hitex;".hitex;".hite1、Voting Disk 和 OCR 必须保'在存储设备上供各个节点访问。:lsstn>ew; color: #6px; line-height: normar: #000000; font-size: 16px; word-brea5g: 0明2、Voting Disk、OCR '网络是安装的过程中或者'装前必须要指定或者配置的。'装完成'可以通过一些工'进行配置和修改。:lsstn>ew; color:div16px; line-height: normar: #000000; font-size: 16px; word-brea5g: 0.hite<; span>x;lpaddcou/s">x;loverflow: hid000; visibility: hid000;amilyyx;amilyyRAC 软件结构w;y ch2milw; cdivlor: #6px; line-height: normar: #000000; font-size: 16px; word-brea5g: 0明x;lpaddcou/s">x;ll"st-6px; -typbredeci>x;lpaddcou/s">x;ll"st-6px; -typbredeci>x;lpaddcou/s">x;ll"st-6px; -typbredeci>x;lpaddcou/s">x;ll"st-6px; -typbredeci>(一) Operation System-Dependent(OSD)onsstn>ew; color: #6px; line-height: normar: #000000; font-size: 16px; word-brea5g: 0明xp">xp">xp3">x;lpaddcou/s">x;ll"st-6px; :1nt<=l.hitex;lpaddcou/s">x;ll"st-6px; -typbredisc;amilyyl  The Cluster Manager(CM):集群监视器监视节点间通信,并通过 interconnect 来协调节点操作。同时还提供 CLUSTER 中所有节点和实例的统一视图。CM 还控制 CLUSTER 的成'资格。:lem> w;y clilor:li16px; line-height: normar: #000000; font-size: 16px; word-breafont a colosp">x;lpaddcou/s">x;ll"st-6px; -typbredisc;amilyyl  The Node Monitor(节点监视器):节点监视器提供节点内各种资源的状态,'括节点、interconnect 硬件和软件和共享磁盘等。:lem> w;y clilor:li16px; line-height: normar: #000000; font-size: 16px; word-breafont a colosp">x;lpaddcou/s">x;ll"st-6px; -typbredisc;amilyyl  The Interconnect 节点间心跳(两种心跳机制,一种是通过私有网络的 network spartbeat;'一种是通过 voting disk 的 disk spartbeat):lem> w;y clilorw; cullor: #6px; line-height: normar: #000000; font-size: 16px; word-brea5g: 0明(二) Real Application Cluster Shard Disk Comptew; color: #6px; line-height: normar: #000000; font-size: 16px; word-brea5g: 0明(三) Real Application Cluster-Specific Daemon and Instance Processesonsstn>包括以下部分:w; color:ol#6px; line-height: normar: #000000; font-size: 16px; word-brea5g: 0paddcou-lefx;lpaddcou/s">x;ll"st-6px; -typbredeci>x;lpaddcou/s">x;ll"st-6px; -typbredeci>x;lpaddcou/s">x;ll"st-6px; -typbredeci>x;lpaddcou/s">x;ll"st-6px; -typbredeci>x;lpaddcou/s">x;ll"st-6px; -typbredeci>< 以外的非数据块资源请求,比如数据文件,控制文件,数据字典试图,library 和 row cache 的请求。w;y clilor:li16px; line-height: normar: #000000; font-size: 16px; word-breafont a colosp">x;lpaddcou/s">x;ll"st-6px; -typbredeci>(四) The Global Cache and Global Enqueue Serviceonsstn>ew; color: #6px; line-height: normar: #000000; font-size: 16px; word-brea5g: 0明x;lpaddcou/s">x;ll"st-6px; -typbredeci>x;lpaddcou/s">x;ll"st-6px; -typbredeci>x;lpaddcou/s">x;ll"st-6px; -typbredeci>x;lpaddcou/s">x;ll"st-6px; -typbredeci>x;lpaddcou/s">x;ll"st-6px; -typbredeci><; span>x;lpaddcou/s">x;loverflow: hid000; visibility: hid000;amilyyx;amilyy集群注册(OCR)w;y ch2milw; cdivlor: #6px; line-height: normar: #000000; font-size: 16px; word-brea5g: 0明x;".hite<; span>x;lpaddcou/s">x;loverflow: hid000; visibility: hid000;amilyyx;amilyyOracle 仲裁盘(Voting Disk)w;y ch2milw; cdivlor: #6px; line-height: normar: #000000; font-size: 16px; word-brea5g: 0明<; span>x;lpaddcou/s">x;loverflow: hid000; visibility: hid000;amilyyx;amilyy集群的网络连接w;y ch2milw; cdivlor: #6px; line-height: normar: #000000; font-size: 16px; word-brea5g: 0明< 技术使用这种网络将每个主机的物理内存 (RAM) 有效地组合成一个高速缓存。 OracleCache Fus">< 通过'专用网络上传输某个 Oracle 实例高速缓存中存储的数据允许其他任何实例访问这些数据。它还通过'集群节点中传输锁定''他同步信息保持数据完整性'高速缓存一致性。专用网络通常是用千兆以太网构建的,但是对于高容量的环境,'多厂'提供了专门为 Oracle RAC 设计的低延迟、高带宽的专有解决方案。 Linux 还提供一种将多个物理 NIC 绑定为一个虚拟 NIC 的方法(此处不涉及)来增'带宽和提高可用性。w; color: #6px; line-height: normar: #000000; font-size: 16px; word-brea5g: 0明<; span>x;lpaddcou/s">x;loverflow: hid000; visibility: hid000;amilyyx;amilyy透明应用切换(TAF)w;y ch2milw; cdivlor: #6px; line-height: normar: #000000; font-size: 16px; word-brea5g: 0明x;lpaddcou/s">x;ll"st-6px; -typbredeci>x;lpaddcou/s">x;ll"st-6px; -typbredeci><; span>x;lpaddcou/s">x;loverflow: hid000; visibility: hid000;amilyyx;amilyy连接负载均衡w;y ch2milw; cdivlor: #6px; line-height: normar: #000000; font-size: 16px; word-brea5g: 0明<; span>x;lpaddcou/s">x;loverflow: hid000; visibility: hid000;amilyyx;amilyyVIP 的原理'特点w;y ch2milw; cdivlor: #6px; line-height: normar: #000000; font-size: 16px; word-brea5g: 0明xp">xp">xp3">x;lpaddcou/s">x;ll"st-6px; :1nt<=l.hitex;lpaddcou/s">x;ll"st-6px; -typbredisc;amilyyl   VIP 是通过 VIPCA 脚本创建的。:lem> w;y clilor:li16px; line-height: normar: #000000; font-size: 16px; word-breafont a colosp">x;lpaddcou/s">x;ll"st-6px; -typbredisc;amilyyl   VIP 作为 Nodeapps 类型的 CRS Resmarce 注册到 OCR 中,并由 CRS 维护状态。:lem> w;y clilor:li16px; line-height: normar: #000000; font-size: 16px; word-breafont a colosp">x;lpaddcou/s">x;ll"st-6px; -typbredisc;amilyyl   VIP 会绑定到节点的 public 网卡上,故 public 网卡有 2 个地址。:lem> w;y clilor:li16px; line-height: normar: #000000; font-size: 16px; word-breafont a colosp">x;lpaddcou/s">x;ll"st-6px; -typbredisc;amilyyl   当某个节点'生故障时,CRS 会把故障节点的 VIP 转移到其他节点上。:lem> w;y clilor:li16px; line-height: normar: #000000; font-size: 16px; word-breafont a colosp">x;lpaddcou/s">x;ll"st-6px; -typbredisc;amilyyl   每个节点的 L"sten #0会同时监听 public 网卡上的 public ip 和 VIP.:lem> w;y clilor:li16px; line-height: normar: #000000; font-size: 16px; word-breafont a colosp">x;lpaddcou/s">x;ll"st-6px; -typbredisc;amilyyl   客户端的 tnsnames.Ora 一般会配置指向节点的 VIP.:lem> w;y clilorw; cullor:div16px; line-height: normar: #000000; font-size: 16px; word-brea5g: 0.hite<; span>x;lpaddcou/s">x;loverflow: hid000; visibility: hid000;amilyyx;amilyy日志体系w;y ch2milw; cdivlor: #6px; line-height: normar: #000000; font-size: 16px; word-brea5g: 0明注意:在 RAC 环境下,Redo Log Group 是在整个数据库级别进行编号,如果实例 1 有 1,2 两个日志组,那么实例 2 的日志组编号就应该从 3 开始,不能使用 1,2 编号了。在 RAC 环境上,所有实例的联机日志必须放在共享存储上,因为如果某个节点'常'闭,剩下的节点要进行 crash recovery,执行 crash recovery 的这个节点'须能够访问到故障节点的连接日志,'有把联机日志放在共享存储上才能满足这个要求。:lsstn>ew; color: #6px; line-height: normar: #000000; font-size: 16px; word-brea5g: 0明x;lpaddcou/s">x;ll"st-6px; -typbredeci>x;lpaddcou/s">x;ll"st-6px; -typbredeci>x;lpaddcou/s">x;ll"st-6px; -typbredeci>xp">xp">xp3">x;lpaddcou/s">x;ll"st-6px; :1nt<=l.hitex;lpaddcou/s">x;ll"st-6px; -typbredisc;amilyyl  crsd.Log: $ORA_CRS_HOME/log/hostname/crsd/crsd.Log:lem> w;y clilor:li16px; line-height: normar: #000000; font-size: 16px; word-breafont a colosp">x;lpaddcou/s">x;ll"st-6px; -typbredisc;amilyyl  ocssd.Log: $ORA_CRS_HOME/log/hostname/cssd/ocsd.Log:lem> w;y clilor:li16px; line-height: normar: #000000; font-size: 16px; word-breafont a colosp">x;lpaddcou/s">x;ll"st-6px; -typbredisc;amilyyl  evmd.Log: $ORA_CRS_HOME/log/hostname/evmd/evmd.Log:lem> w;y clilorw; cullor: #6px; line-height: normar: #000000; font-size: 16px; word-brea5g: 0明x;llefx;lclip/srect(1px;1px;1px;1px); -webkit-user-select:1nt<=lpositioospstatic;lpaddcou/s">x;lborder/s">x;ldispla noin明<; transitioospnt<=la colosp">x;lvertical0align: 0g: 0明ORACRSHOME/log/hostname/racg/这里面放的是nodeapp的日志,'括ONS和VIP,比如:ora.Rac1.ons.Log工具执行日志:ORA_CRS_HOME/log/hostname/client/w; color: #6px; line-height: normar: #000000; font-size: 16px; word-brea5g: 0明x;llefx;lclip/srect(1px;1px;1px;1px); -webkit-user-select:1nt<=lpositioospstatic;lpaddcou/s">x;lborder/s">x;ldispla noin明<; transitioospnt<=la colosp">x;lvertical0align: 0g: 0明ORACLEHOME/log/hostname/client/和ORACLE_HOME/log/hostname/racg 也有相关的日志。w; color:div16px; line-height: normar: #000000; font-size: 16px; word-brea5g: 0.hitex;amilyyCache Fus">< 原理w;y ch2milw; cdivlor: #6px; line-height: normar: #000000; font-size: 16px; word-brea5g: 0明< 这个重要的概念,要发挥 Cache Fus">< 的作用,要有一个前提条件,那就是互联网络的速度要比访问磁盘的速度要快。否则,没有引入:lem> Cache Fus">< :lem>的意义:lem>。而事实上,现在p100MB 的互联网都很常见。w; color:div16px; line-height: normar: #000000; font-size: 16px; word-brea5g: 0.hite<; span>x;lpaddcou/s">x;loverflow: hid000; visibility: hid000;amilyyx;amilyy什么是 Cache Fus"><?w;y ch2milw; cdivlor: #6px; line-height: normar: #000000; font-size: 16px; word-brea5g: 0明< 就是通过互联网络(高速的 Privateointerconnect)在集群内各节点的 SGA 之间进行块传递,这是RAC最核心的工作机制,他把所有实例的SGA虚拟成一个大的SGA区,每当不同的实例请求相同的数据块时,这个数据块就通过 Privateointerconnect 在实例间进行传递。以避免首先将块推送到磁盘,然'再重新读入其他实例的缓存中这样一种低效的实现方式(OPS 的实现)。当一个块被读入 RAC 环境中某个实例的缓存时,该块会被赋予一个锁资源(与行级锁不同),以确保其他实例知道该块正在被使用。之',如果另一个实例请求该块的一个副本,而该块已经处于'一个实例的缓存内,那么该块会通过互联网络直接被传递到'一个实例的 SGA。如果内存中的块已经被改变,但改变尚未提交,那么将会传递一个 CR 副本。这就意味着只要可能,数据块无需写回磁盘即可在各实例的缓存之间移动,从而避免了同步多实例的缓存所花费的额外 I/O。很明显,不同的实例缓存的数据可以是不同的,也就是在一个实例要访问特定块之',而它又从未访问过这个块,那么它要么从其他实例 cache fus">< 过来,或者从磁盘中读入。GCS(Global Cache Service,'局内存服务)和 GES(Global EnquenceService,'局队列服务)进程管理使用集群节点之间的数据块同步互联。w; color: #6px; line-height: normar: #000000; font-size: 16px; word-brea5g: 0明x;lpaddcou/s">x;ll"st-6px; -typbredeci>x;am在所有实例都未读取该块,而第一个实例读取时,是怎么加的锁,'的什么锁?如果此时有另一个实例也要读这个块,几乎是同时的,那么 Oracle 如何来仲裁,如何让其中一个读取,而另一个再从前者的缓存中通过 cache 来得到?:lsstn>ew;y clilor:li16px; line-height: normar: #000000; font-size: 16px; word-breafont a colosp">x;lpaddcou/s">x;ll"st-6px; -typbredeci>x;am如果一个块已经被其他实例读入,那么本实例如何判断它的'在?:lsstn>ew;y clilor:li16px; line-height: normar: #000000; font-size: 16px; word-breafont a colosp">x;lpaddcou/s">x;ll"st-6px; -typbredeci>x;am如果某个实例改变了这个数据块,是否会将改变传递到'他实例,或者说'他实例是否会知道并重新更新状态?:lsstn>ew;y clilor:li16px; line-height: normar: #000000; font-size: 16px; word-breafont a colosp">x;lpaddcou/s">x;ll"st-6px; -typbredeci>x;am如果一个实例要 swap:lsstn>x;amout:lsstn>x;am 某个块,而同时'他实例也有这个块的缓存,修改过的和未修改过的,本实例修改的和'他实例修改的,如何操作? truncateo一张表,dropo一张表... 和单实例有何不同?:lsstn>ew;y clilor:li16px; line-height: normar: #000000; font-size: 16px; word-breafont a colosp">x;lpaddcou/s">x;ll"st-6px; -typbredeci>x;am应该如何设计应用,以使 RAC 真正发挥作用,而不是引入竞争,导致系统被削弱?:lsstn>ew;y clilor:li16px; line-height: normar: #000000; font-size: 16px; word-breafont a colosp">x;lpaddcou/s">x;ll"st-6px; -typbredeci>x;amRAC 下锁的实现。:lsstn>ew;y clilorw; collor: #6px; line-height: normar: #000000; font-size: 16px; word-brea5g: 0明< 及其他资源的分配控制,要求有一个快速的互联网络,所以要关注与互联网络上消息相关的度量,以测试互联网络的通信量'相应时间。对于前面的一些问题,可以结合另外的概念来学习,它们是全局缓存服务和'局队列服务。w; color: #6px; line-height: normar: #000000; font-size: 16px; word-brea5g: 0明< 结合在一起来理解。全局缓存要涉及到数据块。全局缓存服务负责维护该全局缓冲存储区内的缓存一致性,确保一个实例在任何时'想修改一个数据块时,都'获得一个'局锁资源,从而避免另一个实例同时修改该块的可能性。进行修改的实例将拥有块的当前版本('括已提交的和未提交的事物)以及块的前象(post i>猜想:Oracle 目前的 cache fus">< 是在其他实例访问时会将块传输过'再构建一个块在那个实例的 SGA 中,这个主要的原因可能是ointerconnect 之间的访问还是从本地内存中访问更快,从而让 Oracle 再次访问时可以从本地内存快速获取。但是这也有麻烦的地方,因为在多个节点中会有数据块的多个0; py,这样在管理上的消耗是很可观的,Oracle 是否会有更好的解决方案'现在后续版本中?如果ointerconnect 速度允许的话...)w; color: #6px; line-height: normar: #000000; font-size: 16px; word-brea5g: 0明<; span>x;lpaddcou/s">x;loverflow: hid000; visibility: hid000;amilyyx;amilyy什么是高可用w;y ch2milw; cdivlor: #6px; line-height: normar: #000000; font-size: 16px; word-brea5g: 0明 Availability 的首字母组合,翻译过来,可以叫做高可用,或高可用性,高可用(环境)。我觉得应该说 HA 是一个观念而不是一项或一系列具体技术,就象网格一样。作过系统方案'知道了,评价系统的性能当中就有一项高可用。也就是 OSo一级的双机热备。RAC 是 real application cluster 的简称,它是在多个主机上运行一个数据库的技术,即是一个 db 多个0instance。它的好处是 可以由多个性能较差的机器构建'一个整体性能很好的集群,'且实现了负载均衡,那么当一个节点'现故障时,其上的服务会自动转到'外的节点'执行,用户甚 至感觉不到什么。w; color:div16px; line-height: normar: #000000; font-size: 16px; word-brea5g: 0.hite<; span>x;lpaddcou/s">x;loverflow: hid000; visibility: hid000;amilyyx;amilyyFAILSAFE 和 RAC 的区别w;y ch2milw; cdivlor: #6px; line-height: normar: #000000; font-size: 16px; word-brea5g: 0明<; span>x;lpaddcou/s">x;loverflow: hid000; visibility: hid000;amilyyx;amilyyRAC 和 OPS 区别w;y ch2milw; cdivlor: #6px; line-height: normar: #000000; font-size: 16px; word-brea5g: 0明<; span>x;lpaddcou/s">x;loverflow: hid000; visibility: hid000;amilyyx;amilyy双机热备、RAC 和 Data  Guard的区别w;y ch2milw; cdivlor: #6px; line-height: normar: #000000; font-size: 16px; word-brea5g: 0明<; span>x;lpaddcou/s">x;loverflow: hid000; visibility: hid000;amilyyx;amilyy节点间的通信(Interconnect)w;y ch2milw; cdivlor: #6px; line-height: normar: #000000; font-size: 16px; word-brea5g: 0明<; span>x;lpaddcou/s">x;loverflow: hid000; visibility: hid000;amilyyx;amilyy锁w;y ch2milw; cdivlor: #6px; line-height: normar: #000000; font-size: 16px; word-brea5g: 0明x;lpaddcou/s">x;ll"st-6px; -typbredeci>x;amMode 有 N、S、X3 种方式:lsstn>ew;y clilor:li16px; line-height: normar: #000000; font-size: 16px; word-breafont a colosp">x;lpaddcou/s">x;ll"st-6px; -typbredeci>x;amRole 有 Local 和 Global 两种:lsstn>ew;y clilor:li16px; line-height: normar: #000000; font-size: 16px; word-breafont a colosp">x;lpaddcou/s">x;ll"st-6px; -typbredeci>x;amN 有 PI 和 XI 两种,一般 0 表示 XI,1 表示 PI:lsstn>ew;y clilor:li16px; line-height: normar: #000000; font-size: 16px; word-breafont a colosp">x;lpaddcou/s">x;ll"st-6px; -typbredeci>x;am'局内存管理:lsstn>ew;y clilor:li16px; line-height: normar: #000000; font-size: 16px; word-breafont a colosp">x;lpaddcou/s">x;ll"st-6px; -typbredeci>x;amRAC 中的数据库文件:lsstn>ew;y clilor:li16px; line-height: normar: #000000; font-size: 16px; word-breafont a colosp">x;lpaddcou/s">x;ll"st-6px; -typbredeci>x;amRAC 中读的一致性:lsstn>ew;y clilor:li16px; line-height: normar: #000000; font-size: 16px; word-breafont a colosp">x;lpaddcou/s">x;ll"st-6px; -typbredeci>x;am群集'绪服务(CRS):lsstn>ew;y clilor:li16px; line-height: normar: #000000; font-size: 16px; word-breafont a colosp">x;lpaddcou/s">x;ll"st-6px; -typbredeci>x;am'局资源目录:lsstn>ew;y clilorw; collor:div16px; line-height: normar: #000000; font-size: 16px; word-brea5g: 0.hite<; span>x;lpaddcou/s">x;loverflow: hid000; visibility: hid000;amilyyx;amilyy一致性管理w;y ch2milw; cdivlor: #6px; line-height: normar: #000000; font-size: 16px; word-brea5g: 0明x;lpaddcou/s">x;ll"st-6px; -typbredeci>x;am脏读:一个事务'以读取'他事务'入但还没有提交的数据。  :lsstn>ew;y clilor:li16px; line-height: normar: #000000; font-size: 16px; word-breafont a colosp">x;lpaddcou/s">x;ll"st-6px; -typbredeci>x;am不可重复读(模糊读):一个事务重复读到以前读到的和查询到的数据,这些数据是其他的已提交事务'经修改或者删除的数据。:lsstn>ew;y clilor:li16px; line-height: normar: #000000; font-size: 16px; word-breafont a colosp">x;lpaddcou/s">x;ll"st-6px; -typbredeci>x;am幻影读:一个事务重复运行查询返回的一些列行,这些行'括其他已经提交的事务'经插入的额外的行。:lsstn>ew;y clilorw; collor: #6px; line-height: normar: #000000; font-size: 16px; word-brea5g: 0明<; span>x;lpaddcou/s">x;loverflow: hid000; visibility: hid000;amilyyx;amilyyOCR 结构w;y ch2milw; cdivlor: #6px; line-height: normar: #000000; font-size: 16px; word-brea5g: 0明<; span>x;lpaddcou/s">x;loverflow: hid000; visibility: hid000;amilyyx;amilyyOracle Clusterware 后台进程w;y ch2milw; cdivlor: #6px; line-height: normar: #000000; font-size: 16px; word-brea5g: 0明<; span>x;lpaddcou/s">x;loverflow: hid000; visibility: hid000;amilyyx;amilyyRAC 的并发控制w;y ch2milw; cdivlor: #6px; line-height: normar: #000000; font-size: 16px; word-brea5g: 0明x;lpaddcou/s">x;ll"st-6px; -typbredeci>x;amNon-Cache Fus">< 资源:包括数据文件、控制文件、数据字典视图 、Library Cache、Row Cache:lsstn>ew;y clilor:li16px; line-height: normar: #000000; font-size: 16px; word-breafont a colosp">x;lpaddcou/s">x;ll"st-6px; -typbredeci>x;amCache Fus">< 资源:包括普通数据块、索引数据块、段头、UNDO 数据块。:lsstn>ew;y clilor:li16px; line-height: normar: #000000; font-size: 16px; word-breafont a colosp">x;lpaddcou/s">x;ll"st-6px; -typbredeci>x;amGRD(Global Resmarce Directory):记录每个数据块在集群间的分布图,在SGA中分master pade与shadowew;y clilor:li16px; line-height: normar: #000000; font-size: 16px; word-breafont a colosp">x;lpaddcou/s">x;ll"st-6px; -typbredeci>x;amPCM lock:mode role Past I>ew;y clilor:li16px; line-height: normar: #000000; font-size: 16px; word-breafont a colosp">x;lpaddcou/s">x;ll"st-6px; -typbredeci>x;amLMS0(LOCK MANAGER SERVICE):'应服务为 GCS(Global Cache Service),主要负责数据块在实例间传递Cache fus">< 参数 GCS_SERVER_PROCESSES:lsstn>ew;y clilor:li16px; line-height: normar: #000000; font-size: 16px; word-breafont a colosp">x;lpaddcou/s">x;ll"st-6px; -typbredeci>x;amLMD:'应服务为 GES(Global ENQUEUE Service),主要负责传递过程中锁的管理。:lsstn>ew;y clilor:li16px; line-height: normar: #000000; font-size: 16px; word-breafont a colosp">x;lpaddcou/s">x;ll"st-6px; -typbredeci>x;amLCK:负责 NON-CACHE FUSION 资源'步访问,每个实例有一个进程。:lsstn>ew;y clilor:li16px; line-height: normar: #000000; font-size: 16px; word-breafont a colosp">x;lpaddcou/s">x;ll"st-6px; -typbredeci>x;amLMON:这个进程'期通信每个实例,对应服务为 CGS(Cluster Group Service)。提供节点监控 pade monitor,通过 GRD 中用位图 0,1 来标志。0:节点'闭 1:节点正常运行通过 CM 层'期通信。:lsstn>ew;y clilor:li16px; line-height: normar: #000000; font-size: 16px; word-breafont a colosp">x;lpaddcou/s">x;ll"st-6px; -typbredeci>x;am两种心跳机制:网络心跳'控制文件磁盘心跳 3So一次。:lsstn>ew;y clilor:li16px; line-height: normar: #000000; font-size: 16px; word-breafont a colosp">x;lpaddcou/s">x;ll"st-6px; -typbredeci>x;amDIAG:监控状态,写日志 alert.log:lsstn>ew;y clilor:li16px; line-height: normar: #000000; font-size: 16px; word-breafont a colosp">x;lpaddcou/s">x;ll"st-6px; -typbredeci>x;amGSD:为用户提供管理接口。:lsstn>ew;y clilorw; collor:div16px; line-height: normar: #000000; font-size: 16px; word-brea5g: 0.hite<; span>x;lpaddcou/s">x;loverflow: hid000; visibility: hid000;amilyyx;amilyyRAC 的主要后台进程w;y ch2milw; cdivlor:div16px; line-height: normar: #000000; font-size: 16px; word-brea5g: 0.hite<; span>x;lpaddcou/s">x;loverflow: hid000; visibility: hid000;amilyyx;amilyyRAC 重构触发条件w;y ch2milw; cdivlor: #6px; line-height: normar: #000000; font-size: 16px; word-brea5g: 0明<; span>x;lpaddcou/s">x;loverflow: hid000; visibility: hid000;amilyyx;amilyyRAC 优缺点w;y ch2milw; cdivlor:div16px; line-height: normar: #000000; font-size: 16px; word-brea5g: 0.hitex;amilyyRAC 优点w;y ch3milw; cdivlor: #6px; line-height: normar: #000000; font-size: 16px; word-brea5g: 0明x;amilyyRAC 缺点w;y ch3milw; cdivlor: #6px; line-height: normar: #000000; font-size: 16px; word-brea5g: 0明x;amilyy共享'储w;y ch2milw; cdivlor: #6px; line-height: normar: #000000; font-size: 16px; word-brea5g: 0明<; span>x;lpaddcou/s">x;loverflow: hid000; visibility: hid000;amilyyx;amilyy时间一致性w;y ch2milw; cdivlor: #6px; line-height: normar: #000000; font-size: 16px; word-brea5g: 0明<; span>x;lpaddcou/s">x;loverflow: hid000; visibility: hid000;amilyyx;amilyy互联网络(或者私有网络、心跳线)w;y ch2milw; cdivlor: #6px; line-height: normar: #000000; font-size: 16px; word-brea5g: 0明<; span>x;lpaddcou/s">x;loverflow: hid000; visibility: hid000;amilyyx;amilyy固件、驱动、升级包的一致性w;y ch2milw; cdivlor: #6px; line-height: normar: #000000; font-size: 16px; word-brea5g: 0明x;lpaddcou/s">x;ll"st-6px; -typbrenone;"lx;lpaddcou/s">x;ll"st-6px; -typbredeci>x;lpaddcou/s">x;ll"st-6px; -typbredeci>x;lpaddcou/s">x;ll"st-6px; -typbredeci><; span>x;lpaddcou/s">x;loverflow: hid000; visibility: hid000;amilyyx;amilyy'享文件 OCR 及 Voting1Diskw;y ch2milw; cdivlor: #6px; line-height: normar: #000000; font-size: 16px; word-brea5g: 0明<; span>x;lpaddcou/s">x;loverflow: hid000; visibility: hid000;amilyyx;amilyy'装w;y ch2milw; cdivlor: #6px; line-height: normar: #000000; font-size: 16px; word-brea5g: 0明<; span>x;lpaddcou/s">x;loverflow: hid000; visibility: hid000;amilyyx;amilyy脑裂症(split brain)w;y ch2milw; cdivlor: #6px; line-height: normar: #000000; font-size: 16px; word-brea5g: 0明<; span>x;lpaddcou/s">x;loverflow: hid000; visibility: hid000;amilyyx;amilyy集群软件w;y ch2milw; cdivlor: #6px; line-height: normar: #000000; font-size: 16px; word-brea5g: 0明<; span>x;lpaddcou/s">x;loverflow: hid000; visibility: hid000;amilyyx;amilyyOracle Clusterware 的'跳w;y ch2milw; cdivlor: #6px; line-height: normar: #000000; font-size: 16px; word-brea5g: 0明xp">xp">xp3">x;lpaddcou/s">x;ll"st-6px; renone;0.hitex;lpaddcou/s">x;ll"st-6px; -typbredisc;amilyylx;am  o一是对 voting1disk 的'跳,ocssd 进程每秒向 votedisk '入一条心跳信息。:lsstn>ew;y clilor:li16px; line-height: normar: #000000; font-size: 16px; word-breafont a colosp">x;lpaddcou/s">x;ll"st-6px; -typbredisc;amilyyx;aml  o二是节点间的私有以太网的'跳。:lsstn>ew;y clilorw; cullor: #6px; line-height: normar: #000000; font-size: 16px; word-brea5g: 0明xp">xp">xp3">x;lpaddcou/s">x;ll"st-6px; renone;0.hitex;lpaddcou/s">x;ll"st-6px; -typbredisc;amilyyx;aml  omissrmant 用于'义节点间心跳通信的超时,单位为秒;:lsstn>ew;y clilor:li16px; line-height: normar: #000000; font-size: 16px; word-breafont a colosp">x;lpaddcou/s">x;ll"st-6px; -typbredisc;amilyyx;aml  odisktimeout ,默认 200 秒,定义 css 进程与 vote1disk 连接的超时时间;:lsstn>x;am:lsstn>ew;y clilorw; cullor: #6px; line-height: normar: #000000; font-size: 16px; word-brea5g: 0明xp">xp">xp3">x;lpaddcou/s">x;ll"st-6px; renone;0.hitex;lpaddcou/s">x;ll"st-6px; -typbredisc;amilyyx;aml  # crsctl get css missrmant:lsstn>ew;y clilor:li16px; line-height: normar: #000000; font-size: 16px; word-breafont a colosp">x;lpaddcou/s">x;ll"st-6px; -typbredisc;amilyyx;aml  # grepomissrmant $CRS_HOME/log/hostname/cssd/ocssd.log:lsstn>ew;y clilorw; cullor: #6px; line-height: normar: #000000; font-size: 16px; word-brea5g: 0明<; span>x;lpaddcou/s">x;loverflow: hid000; visibility: hid000;amilyyx;amilyy如何查看现有系统的配置w;y ch2milw; cdivlor: #6px; line-height: normar: #000000; font-size: 16px; word-brea5g: 0明<; span>x;lpaddcou/s">x;loverflow: hid000; visibility: hid000;amilyyx;amilyy心跳调优'设置w;y ch2milw; cdivlor: #6px; line-height: normar: #000000; font-size: 16px; word-brea5g: 0明< 的通信协议时,在操作系统上需要调整相关参数,以提高 UDP传输效率,并在较大数据时避免出现超出 OS 限制的错误:w; color: #6px; line-height: normar: #000000; font-size: 16px; word-brea5g: 0明
<; mso-layout-grid0align: none;" align="lef<"lor <;"><;">  or:color: lor :br /lor:color: lor :br /lor:color:hr /l:hr /lor:blockquote#6px; lia colosp"p"p"p1">x;lborderrenone;0paddcou/s">x;"lor: class="MsoTitle"#6px; lia colo-bottom: 3><; m colo-toprea2><; word-break/span><; paddcou/s">t;" align="lef<"lor <;p明About Me:lsstn>ew;y color:table class="MsoNan><; border-; flapsenormflapse; -ms-word-break/sbreak0all; -ms-word-wrap/sbreak0word;" border="2" cellpaddcou="10-sor:tbody#6px; lia colo-lef<; ; font-s6666666px; woight: normar: #00000-sor:tr#6px; lia colo-lef<; ; font-s6666666px; woight: normar: #00000-sor:td#6px; libackgroundt-sc7daf1 0paddcou-bottom: 2.85><; paddcou-topre2.85><; paddcou-lef<; paddcou-ran><; ; font-s6666666px; woight: normar: #00000- valign="middle"#width="100%"lor: class="MsoNan><;p明<;amilyyyy <;am...............................................................................................................................:lsstn>ew;yyy <;p明<; ; font-s6666666px; woight: normar: #00000-soryyyy <;am● 本文整理自网络:lsstn>w;yyy <;p明<; ; font-s6666666px; woight: normar: #00000-soryyyy <;am● 本文在itpub(<;0; font-se: 1fa0- href="http://blog.itpub.<http://blog.itpub.<<;0; font-se: 1fa0- href="http://www.cnblogs.com/lhrbest">http://www.cnblogs.com/lhrbesti/an)和个人微信公众号(<;0; font-se: 1fa0- href="http://mp.weixin.qq.com/s?__biz=MzIzOTA2NjEzNQ==&mid=307287619&idx=1&sn=9149fab6ae1aecfd1288316c5edc3805&scene=19#wechat_redirect">xiaomaimiaolhri/an)上有同步更新:lsstn>ew;yyy <;p明<; ; font-s6666666px; woight: normar: #00000-soryyyy <;am● 本文itpub地址:<;0; font-se: 1fa0- href="http://blog.itpub.<http://blog.itpub.<ew;yyy <;p明<;-soryyyy <;am● 本文博客园地址:<;0; font-se: 1fa0- href="http://www.cnblogs.com/lhrbest">http://www.cnblogs.com/lhrbesti/ane:lsstn>ew;yyy <;p明<; ; font-s6666666px; woight: normar: #00000-soryyyy <;am● 本文pdf版及'麦苗云盘地址:<;0; font-se: 1fa0- href="http://blog.itpub.<http://blog.itpub.<ew;yyy <;p明<; ; font-s6666666px; woight: normar: #00000-soryyyy <;am● 数据库笔试面试题库及解答:<;0; font-se: 1fa0- href="http://blog.itpub.<http://blog.itpub.<ew;yyy <;p明<; ; font-s6666666px; woight: normar: #00000-soryyyy <;am● QQ群:230161599     微信群:私聊e:lsstn>ew;yyy <;p明<; ; font-s6666666px; woight: normar: #00000-soryyyy <;am● 联系我请加QQ好友(646634621),注明添加缘由:lsstn>ew;yyy <;p明<; ; font-s6666666px; woight: normar: #00000-soryyyy <;am● 于 2017-06-02 09:00 ~ 2017-06-30 22:00 在魔都完成:lsstn>ew;yyy <;p明<; ; font-s6666666px; woight: normar: #00000-soryyyy <;am● 文章内容来源于小麦苗的'习笔记,部分整理自网络,若有侵权或不当之处还请谅解:lsstn>ew;yyy <;p明<; ; font-s6666666px; woight: normar: #00000-soryyyy <;am● 版权所有,欢迎分享本文,转载请保留出处:lsstn>ew;yyy <;p明<; ; font-s6666666px; woight: normar: #00000-soryyyy <;am...............................................................................................................................:lsstn>ew;yyy <;p明<; x; woight: noCmar: #0N0000; font-s6666666px; word-brea1><;amoryyyy 拿起手机使用<;am微信客户端扫描下边的左边图片来关注小麦苗的'信公众号:xiaomaimiaolhr,扫描右边的二维码加入小麦苗的QQ群,:lsstn>'习最实用的数据库技术。:lsstn>ew;yyy <;p明<;- align="justif -soryyyy <="200" /><="200" />ew;yyy orilyyorilyx;l; font-s6666666px; woight: noCmar: #0N000" border="0" cell/strcou="2" cellpaddcou="2-sor:tbodysor:tr#6px; lix; woight: noCmar: #0N0000; font-s6666666px; word-brea"><;png: 0align: center; vertical0align: center; widthsp100>x;"lor:td#6px; lix; woight: noCmar: #0N0000; font-s6666666px; word-brea"><;pvertical0align: center; widthsp12">x;amilyyyyy <;pvertical0align: center; widthsp12">x;amilyyyyy <;pvertical0align: center; widthsp12">x;amilyyyyy orilyy
<;png: 0inden<; mso-paoloor:br /lor:ca>w;y coloror:cblockquote> cdivl:div1id="MySignature"> cdivlor:div1class="clear"> cdivlor:div1id="blog_post_info_block"lor:div1id="BlogPostCategory"> cdivlor:div1id="EntryTag"> cdivlor:div1id="blog_post_info"lor:cdivlor:div1class="clear"> cdivlor:div1id="post_ng: _prev"> cdivlor:cdivlororilyyposted @ 2017-06-25 14:44:lsstn>e^_^小麦苗^_^i/ane阅读() 评论() e编辑i/ane:a#href="#" onclick="AddToWz(7076782);return false;">收藏i/an:cdivlory:cdivlory:script typb="ng: /javascript">var allowComments=true,cb_blogId=190245,cb_entryId=7076782,cb_blogApp=currentBlogApp,cb_blogUserGuid='3e95319f-7700-e411-8d02-90b11c0b17d6',cb_entryCreatedDate='2017/6/25 14:44:00';loadViewCmant(cb_entryId);var cb_postTypb=1; cdivl:script typb="ng: /javascript">var commentManw;:div1id='divCommentShow'> cdivlor:div1id='comment_nav'>刷新评论i/an:a#href='#' onclick='return RefreshP刷新页面i/an:a#href='#top'>返回顶部i/an:cdivlor:div1id='comment_fan>_rmnta cdivlor:div1class='ad_ng: _commentbox' id='ad_ng: _under_commentbox'n:cdivlor:div1id='ad_n2'n:cdivlor:div1id='op _under_post'> cdivlor:div1id='cnblogs_c1'1class='c_ad_block'> cdivlor:div1id='under_post_ngws'> cdivlor:div1id='cnblogs_c2'1class='c_ad_block'> cdivlor:div1id='under_post_kb'> cdivlor:div1id='HistoryToday'1class='c_ad_block'> cdivlor:script typb='ng: /javascript'lor fixPostBody();or setTimeout(function () { incrementViewCmant(cb_entryId); }, 50);or deliverAdT2();or deliverAdC1();or deliverAdC2(); or loadN00sAndKb();or loadBlogSignature();or LoadPostInfaBlock(cb_blogId, cb_entryId, cb_blogApp, cb_blogUserGuid);or GetPrevNg: Post(cb_entryId, cb_blogId, cb_entryCreatedDate, cb_postTypb);or loadOptUnderPost();or GetHistoryToday(cb_blogId, cb_blogApp, cb_entryCreatedDate); or:cscriptlor:cdivlororily:cdivl