-----Oracle RAC相关
文章平均质量分 89
清风智语
十年以上数据库领域一线实战经验,涵盖高可用,灾备中心设计,备份恢复,数据库开发,数据挖掘,数据库设计,性能优化等;其产品服务领域包括Oracle,MySQL,SQLserver,MongoDB等。曾先后服务于晨星资讯,dbadirect,香港易高科技等金融,证券软件行业;并提供企业级数据库性能优化,运维管理相关培训,先后提供培训服务的对象有速尔快递,同洲电子,民太安保险,康拓普,广州电信研究院,中行浙江分行等。
展开
-
Oracle RAC环境下配置statspack
Statspack是Oracle 9i时代的产物,对于监控与分析数据库性能有着跨里程碑的意义,是AWR的前身。在Oracle 10g后AWR取代了statspack。尽管如此,awr异常或者需要调试包license的情况下statpack依旧是不错的选择。然而在RAC环境中,statspack并不支持,需要单独的进行配置以及使用job来进行管理。本文描述的则是通过在RAC环境下创建service,原创 2014-09-26 14:32:21 · 3894 阅读 · 1 评论 -
Oracle RAC OCR 与健忘症
OCR就好比Windows的一个注册表,存储了所有与集群,RAC数据库相关的配置信息。而且是公用的配置,也就是说多个节点共享相同的配置信息。因此该配置应当存储于共享磁盘。本文主要基于Oracle 10g RAC描述了集群的OCR以及OCR产生的健忘问题。 一、OCR的特点 类似于Windows注册表,用于存储所有与集群,RAC数据库相关的配置信息 被多个节点所共享,因此,只能存储于共享磁盘原创 2013-02-05 20:09:13 · 13629 阅读 · 3 评论 -
Oracle RAC OCR 的备份与恢复
Oracle Clusterware把整个集群的配置信息放在共享存储上,这些信息包括了集群节点的列表、集群数据库实例到节点的映射以及CRS应用程序资源信息。也即是存放在ocr 磁盘(或者ocfs文件)上。因此对于这个配置文件的重要性是不言而喻的。任意使得ocr配置发生变化的操作在操作之间或之后都建议立即备份ocr。本文主要基于Oracle 10g RAC环境描述OCR的备份与恢复。原创 2013-02-26 11:25:12 · 9901 阅读 · 3 评论 -
Oracle RAC OCR 的管理与维护
OCR相当于Windows的注册表。对于Windows而言,所有的软件信息,用户,配置,安全等等统统都放到注册表里边。而集群呢,同样如此,所有和集群相关的资源,配置,节点,RAC数据库统统都放在这个仓库里。如果OCR被破坏则导致集群服务启动异常,需要修复OCR。因此OCR的管理与维护对于整个集群而言,是相当重要的。本文主要描述了Oracle 10g RAC下的OCR的管理与维护。1、环境 ora原创 2013-02-05 20:31:03 · 10439 阅读 · 0 评论 -
Oracle 11g RAC oc4j/gsd Offline
Oracle 11g RAC中,发现oc4j以及gsd服务都处于offline状态,这是Oracle 11g RAC默认情形。即便如此,并不影响数据库的使用,因为 oc4j 是用于WLM 的一个资源, WLM在 11.2.0.2 才可用。GSD则是用于支持dbca,srvctl,oem等的交互工具。本文描述将这两个服务切换到online。1、环境 [root@linux2 ~]# cat /e原创 2013-01-06 09:33:43 · 16202 阅读 · 1 评论 -
Oracle RAC failover 测试(Server TAF方式)
Oracle RAC中,除了基于客户端的TAF方式之外,还有基于服务器端的TAF方式,可以把服务端的TAF方式看作是客户端TAF方式的一个升级版吧。服务器端的TAF,当然是需要在服务器端进行配置了,这个是通过Service来完成的。本文主要描述Oracle 10g rac 下通过service方式配置服务器端的TAF。 下面是一些关于这方面的基础参考链接: 有关负监听配置,载均衡(load b原创 2012-12-17 21:15:27 · 8085 阅读 · 0 评论 -
Oracle RAC failover 测试(TAF方式)
Oracle RAC 客户端故障转移(failover),当采用TAF方式时,对于已经建立连接的客户端,在连接的实例或节点出现故障时,客户端无需再次发出连接请求,仍然可以继续之前的数据库操作,此称之为透明故障转移。本文描述基于Oracle 10g rac,客户端TAF方式的故障转移并给出示例。 下面是一些关于这方面的基础参考链接: 有关负监听配置,载均衡(load balance)以及Orac原创 2012-12-17 19:44:59 · 14444 阅读 · 0 评论 -
Oracle 11g RAC CRS-4535/ORA-15077
新安装了Oracle 11g rac之后,不知道是什么原因导致第二个节点上的crsd无法启动?其错误消息是CRS-4535: Cannot communicate with Cluster Ready Services。其具体的错误信息还需要查看crsd.log日志才知道。1、环境 [root@linux2 ~]# cat /etc/issue Enterprise Linux Enter原创 2013-01-05 14:28:44 · 15648 阅读 · 0 评论 -
配置客户端连接到ASM实例
对于Oracle 网络配置,我们通常通过negmgr或者netca来完成客户端连接到数据库实例。而对于连接到ASM实例,同样可以实现从客户端来进行连接。不过Oracle并未为我们提供工具来完成配置,我们可以通过手动配置监听以及客户端tnsnames来实现。本文对此给出描述与示例。1、服务器端、客户端的环境 #服务器端环境,host信息 oracle@bo2dbp:~> cat原创 2013-01-04 10:57:14 · 7721 阅读 · 0 评论 -
Oracle RAC failover 测试(连接时故障转移)
Oracle RAC 集群最突出的表现就是高可用性,这些内容主要包括load balance以及failover,通过这些技术使得单点故障不影响客户端端应用程序对数据库的正常访问,以及通过创建service实现节点间负载均衡。本文主要描述Oracle 10g rac环境下的Oracle failover测试。 下面是一些关于这方面的基础参考或相关链接: 有关负监听配置,载均衡(load b原创 2012-12-17 16:08:23 · 13608 阅读 · 0 评论 -
RAC 环境下修改归档模式
RAC环境下的归档模式切换与单实例稍有不同,主要是共享存储所产生的差异。在这种情况下,我们可以将RAC数据库切换到非集群状态下,仅仅在一个实例上来实施归档模式切换即可完成RAC数据库的归档模式转换问题。本文主要描述了由非归档模式切换到归档模式,而由非归档切换的归档步骤相同,不再赘述。1、主要步骤: 备份spfile,以防止参数修改失败导致数据库无法启动 修改集群参数cluster_data原创 2012-12-28 10:19:39 · 10457 阅读 · 1 评论 -
Oracle 11g RAC 执行root.sh时遭遇 CRS-0184/PRCR-1070
Oracle 11g RAC安装时,在第一个节点执行root.sh时遭遇了CRS-0184/PRCR-1070,Google了很多帖子也没有找到解决办法。呜呜,还是静下心来看日志!!最后的发现原来是一个不经意的小问题,如下面的描述。 1、故障现象#安装环境[root@linux1 ~]# more /etc/issueEnterprise Linux Enterprise Linux Se原创 2013-07-16 18:00:34 · 8864 阅读 · 0 评论 -
重新配置与卸载 11gR2 Grid Infrastructure
Oracle 11g R2 Grid Infrastructure 的安装与配置较之前的版本提供了更多的灵活性。在Grid Infrastructure安装完毕前执行root.sh经常容易出现错误,并且需要修复该错误才能得以继续。在这个版本中我们可以直接通过执行脚本rootcrs.pl来重新配置Grid Infrastructure而无需先卸载Grid Infrastructure,然后修复故障后原创 2013-07-17 15:14:37 · 13636 阅读 · 0 评论 -
Vmware server 下为Oracle RAC 添加共享磁盘
在VMware下的Oracle RAC 环境中,对于共享存储不够或者需要增加新的共享磁盘来配置ocr或votingdisk的多路镜像,我们可以通过vmware下的命令行来增加共享存储,然后将这些新磁盘逐一追加到虚拟机即可。下面给出具体描述。 1、添加虚拟磁盘 #下面我们为虚拟机增加2块共享磁盘 #一块为添加ocr镜像,一块用于补充asm磁盘不够用的情形 C:\Users\robins原创 2013-01-07 09:51:16 · 8313 阅读 · 0 评论 -
Oracle 集群心跳及其参数misscount/disktimeout/reboottime
在Oracle RAC中,可以从多个层次,多个不同的机制来检测RAC的健康状况,即可以通过心跳机制以及一定的投票算法来隔离故障。如果检测到某节点失败,则存在故障的节点将会被逐出集群以避免故障节点破坏数据。本文主要描述了Oracle RAC下的几种心跳机制以及心跳参数的调整。一、OCSSD与CSSOCSSD是一个管理及提供Cluster Synchronization Services (CSS)服原创 2014-09-02 09:40:43 · 9942 阅读 · 0 评论 -
Suse 11下多路径及udev配置
Suse 11下多路径Udev配置最近给客户基于SuSe 11 SP3下多路径部署Oracle 10g RAC。SuSe 11下用10g,也算一朵奇葩,连篇文档都比较难找,谁叫Oracle太贵呢。下面主要是描述了在该环境下如何去配置多路径。由于10g下的ocr与votingdisk不能直接存放到asm磁盘,所以依旧要使用raw设备方式来保存。下文供大家参考。一、查看当前scsi设备及获取设备wwi原创 2014-09-01 14:08:14 · 12821 阅读 · 0 评论 -
Failed to upgrade Oracle Cluster Registry configuration(root.sh)
最近在给客户基于Suse 11 sp3安装Oracle 10g RAC,在安装完clusterware执行/u01/app/crs/root.sh时收到错误提示,Failed to upgrade Oracle Cluster Registry configuration由于当前的环境使用了多路径,从Oracle的描述来看,这是一个Oracle Bug(4679769),如果你有相同的问题,请接着原创 2014-08-21 11:22:50 · 5616 阅读 · 0 评论 -
Oracle RAC环境下如何更新patch(Rolling Patch)
Oracle RAC数据库环境与单实例数据库环境有很多共性,也有很多异性。对于数据库补丁的更新同样如此,都可以通过opatch来完成。但RAC环境的补丁更新有几种不同的更新方式,甚至于可以在零停机的情况下对所有节点实现滚动升级。本文主要是转述了Doc 244241.1,描述RAC环境下的patch更新方式以及在不同的情形下选择何种更新方式。1、RAC patch的几种方式OPatch suppor原创 2014-08-21 11:10:06 · 5874 阅读 · 3 评论 -
如何使用 orachk 工具
Oracle RAC 安装完毕后的健壮性是一个令人头疼的问题。之前Oracle为之专门推出了raccheck工具,确实方便了我们这些个苦逼的DBA。现在Oracle在raccheck的基础之上又推出了orachk. EXAchk 的功能并替换了流行的 RACcheck 工具,扩大根据用户报告的最重要问题的优先次序的覆盖面,并且主动扫描E-Business Suite Financials Acco原创 2014-04-11 16:40:55 · 8784 阅读 · 0 评论 -
Oracle 11g RAC 环境下单实例非缺省监听及端口配置
如果在Oracle 11g RAC环境下使用dbca创建单实例数据库后,Oracle会自动将其注册到缺省的1521端口及监听器。大多数情况下我们使用的为非缺省监听器以及非缺省的监听端口。而且在Oracle 11g RAC环境中,对于集群监听器的配置有grid用户来接管了。基于这种情形的单实例非缺省监听及端口该如何配置呢?本文给出了解决方案,并且使用了静态及动态两种注册方法。 关于单实例下原创 2013-08-16 17:36:30 · 8574 阅读 · 4 评论 -
X86 DBCA, NETCA GIVE JAVA HOTSPOT ERROR IF ON X86_64 HARDWARE
在使用DBCA命令创建新的数据库时,DBCA命令无法启动。运行的环境是宿主机64bit+AMD cpu, 而客户机为Linux 32bit + Grid Infrastructure(32) + Oracle database software(32)的情形。原本想着32bit运行的会快一点,没想到Bug 8670579 在执行dbca时再一次被触发,根据Oracel描述,类似的NETCA也会触发原创 2013-07-17 16:36:45 · 4645 阅读 · 0 评论 -
Oracle RAC 环境下的 v$log v$logfile
通常情况下,在Oracle RAC 环境中,v$视图可查询到你所连接到的实例的信息,而gv$视图则包含所有实例的信息。然而在RAC环境中,当我们查询v$log视图时说按照常理的话,v$log视图应当看到的是你所连接到实例的日志组的信息。但v$log是个例外,也就是说v$log视图里看到的不仅仅是自身实例所包含的redo日志组,其他所有剩余实例的redo日志组也同样会出现在该视图中。无论你从任意一个原创 2013-08-05 16:40:57 · 13392 阅读 · 0 评论 -
Oracle 11g RAC crs_stat 命令结果完整显示
Oracle 11g RAC中crs_stat命令较之前的版本多出了很多新的不同的资源类型,缺省情况下,使用crs_stat -t来查看资源是密密麻麻一大片,看起来着实费力。作者Paul Elbow, Enkitec为我们提供了一个crsstat脚本以更清晰的格式来展现Oracle 11g RAC下的所有资源类型,见本文下面的描述。 1、安装crsstat 通常情况下,建议使用root用户或者o原创 2013-07-22 16:56:26 · 11479 阅读 · 0 评论 -
Vmware 下Oracle RAC搬家引起CRS-1006/CRS-0215/CRS-0233
最近虚拟机下的Oracle 10g RAC搬家,搬家完毕之后,Oracle 集群resource之VIP无法正常启动,收到了CRS-0233: Resource or relatives are currently involved with another operation 错误提示。为为啥呢,原来啊,搬家了地址发生变化了,你得使用你家里的新地址阿....1、环境描述 Oracle 10原创 2013-01-04 11:56:12 · 5604 阅读 · 2 评论 -
Failed to create or upgrade OLR
对于Oracle 11g RAC 的安装,与Oracle 10g(clusterware)类似,grid 安装完毕后需要执行orainstroot.sh和root.sh,如果是AMD芯片,Oracle说不认识啊,那就要恭喜一下你又多了一次patch的亲密接触,这个错误提示是Failed to create or upgrade OLR。客官,中招了?接着往下看...1、安装时的环境 操作原创 2012-12-14 13:49:30 · 10446 阅读 · 3 评论 -
[INS-30507] Empty ASM disk group
最近的Oracle 11g RAC安装碰到了INS-30507错误,也就是在grid安装到创建ASM磁盘组的时候找不到任何候选磁盘,google了N多安装指导也没有找到蛛丝马迹。如果你碰到这个问题,不妨往下瞧。1、错误信息与解释 SEVERE: [FATAL] [INS-30507] Empty ASM disk group. CAUSE: No disks were selec原创 2012-12-13 20:17:17 · 9451 阅读 · 0 评论 -
再说 Oracle RAC services
应用程序工作负载在Oracle 10g中可以被定为services,也称之为服务,能够在单实例中使用,也能够在RAC中单独使用和管理。因此整个数据库负载能够被分割为多个不同的services,通过管理service能够简化用户或session的管理。其次services特性的重要体现在RAC之中用于实现负载均衡与故障转移。本文描述什么是services,以及使用services的好处,以及如何使用原创 2012-10-29 14:41:01 · 16509 阅读 · 0 评论 -
ORACLE RAC 监听配置 (listener.ora tnsnames.ora)
Oracle RAC 监听器的配置与单实例稍有不同,但原理和实现方法基本上是相同的。在Oracle中 tns进程用于为指定网络地址上的一个或多个Oracle 实例提供服务注册,并响应来自客户端对该服务提出的连接请求。一旦连接请求到达,并派生出一个服务器进程建立服务器与用户端之间的连接(专有服务器dedicated server)或转发服务请求(共享服务器模式shared server)。如果监听器原创 2012-09-26 14:42:49 · 60471 阅读 · 2 评论 -
配置 RAC 负载均衡与故障转移
Oracle负载均衡主要是指新会话连接到RAC数据库时,如何判定这个新的连接要连到哪个节点进行工作?通常情况下,负载均衡分为客户端负载均衡与服务器端负载均衡。客户端负载均衡通常是在客户端的tnsnames.ora中多添加一个链接地址以及LOAD_BALANCE与failover参数。而服务器端的负载均衡则相对复杂,下面具体描述服务器端负载均衡。 一、负载均衡 注意这里的负载均衡指的是连原创 2011-09-19 21:51:24 · 13606 阅读 · 2 评论 -
Oracle RAC 负载均衡测试(结合服务器端与客户端)
Oracle RAC 负载均衡使得从客户端发起的连接能够有效地分配到监听器负载较小的实例上。有两种方式实现客户端负载均衡,一是通过配置客户端的load_balance,一是通过配置服务器端的remote_listener参数。两种方式各有优劣,而且两者并不相互排斥,因此可以结合两种方式来更加有效的实现负载均衡。本文将描述两者结合的使用情况(oralce 10g rac)。 有关客户端原创 2012-10-15 11:40:45 · 14476 阅读 · 0 评论 -
Oracle RAC 服务器端连接负载均衡(Load Balance)
Oracle RAC服务器端的负载均衡是根据RAC中各节点的连接负荷数情况,将新的连接请求分配到负荷最小的节点上去。当数据库处于运行时,RAC中各节点的PMON进程每3秒会将各自节点的连接负荷数更新到service_register。而对于节点中任意监听器故障或监听器意外失败时,PMON进程会每1秒钟检查当前节点上的监听是否重启,以获得最新的负载信息来及时调整负载均衡。本文主要演示suse 10原创 2012-10-12 14:55:26 · 19146 阅读 · 0 评论 -
Oracle RAC 客户端连接负载均衡(Load Balance)
实现负载均衡(Load Balance)是Oracle RAC最重要的特性之一,主要是把负载平均分配到集群中的各个节点,以提高系统的整体吞吐能力。通常情况下有两种方式来实现负载均衡,一个是基于客户端连接的负载均衡,一个是基于服务器端监听器(Listener)收集到的信息来将新的连接请求分配到连接数较少实例上的实现方式。本文主要讨论的是基于客户端连接的负载均衡,并给出演示。 与负载均衡原创 2012-10-11 15:19:45 · 31649 阅读 · 0 评论 -
ORACLE RAC 下非缺省端口监听配置(listener.ora tnsnames.ora)
不论是单实例还是RAC,对于非缺省端口下(1521)的监听器,pmon进程不会将service/instance注册到监听器,即不会实现动态注册。与单实例相同,RAC非缺省端口的监听器也是通过设置参数local_listener来达到目的。除此之外,还可以对实例进行远程注册,以达到负载均衡的目的。这是通过一个参数remote_listener来实现。 有关Oracle 网络配置相关基础以及概念性的原创 2012-10-09 16:44:22 · 10900 阅读 · 1 评论 -
基于Linux (RHEL 5.5) 安装Oracle 10g RAC
本文所描述的是在Red Hat 5.5下使用vmware server 来安装Oracle 10g RAC(OCFS + ASM),本文假定你的RHEL5已经安装完毕,下面列出的是对Linux的具体配置及安装过程。一、安装环境1.主机操作系统环境概况:主机名操作系统处理器内存磁盘网卡robinsonWindows XP Professional Service Pack 3Intel酷睿2双核 1原创 2012-08-25 10:11:56 · 15650 阅读 · 1 评论 -
CRS-1006 , CRS-0215 故障一例
安装好sles 10 sp3 + Oracle 10g RAC之后,在配置监听器时,总是提示主机bo2dbp上的监听服务已经在运行,忽略错误之后手动在bo2dbp节点上启,总是收到TNS-12545: Connect failed because target host or object does not exist错误信息。后来发现节点bo2dbp的vip总是漂移到另一节点bo2dbs上,原来原创 2012-08-30 17:33:08 · 10890 阅读 · 0 评论 -
Services in Oracle Database 10g
基于RAC环境中使用的应用程序,有时候希望某个特定的应用程序仅仅运行在RAC的子节点,或者说为某些应用程序分配一个首要节点。对此,Oracle 10g可以使用services来实现。 一、集群配置在使用services之前,需要首先检查集群的配置是否正确。下面的命令输出了数据库ORCL运行于三个不同的节点。srvctl config database -d ORCLserver01翻译 2012-10-19 14:47:22 · 6419 阅读 · 0 评论 -
Oracle RAC 连接到指定实例
在某些特定的情形下,有时候需要从客户端连接到RAC中指定的实例,而不是由客户端Load_balance来动态选择或者是通过服务器端的监听器根据负载情形来转发。对此我们可以通过为tnsnames.ora中特定的网络服务名添加instance_name子项,或者是单独建立一个指向所需实例的网络服务名,下面描述这两种情形。 一、测试环境-->Oracle 版本SQL> select * from v原创 2012-10-15 16:31:47 · 14452 阅读 · 0 评论 -
Migrate database from single instance to Oracle RAC
Migrate database from single instance to Oracle RAC # Preparation before restore# Backup database# check listener# check ASM disk group free space is sufficient.# the following steps was completed suc原创 2012-10-19 15:32:08 · 8042 阅读 · 0 评论 -
安装Oracle 11g RAC R2 之Linux DNS 配置
Oracle 11g RAC 集群中引入了SCAN(Single Client Access Name)的概念,也就是指集群的单客户端访问名称。SCAN 这个特性为客户端提供了单一的主机名,用于访问集群中运行的 Oracle 数据库。如果您在集群中添加或删除节点,使用 SCAN 的客户端无需更改自己的 TNS 配置。无论集群包含哪些节点,SCAN 资源及其关联的 IP 地址提供了一个稳定的名称供客原创 2012-12-13 17:14:39 · 13132 阅读 · 2 评论 -
RAC 环境下的重要参数
Oracle 数据库启动时会根据参数文件中提供的相关参数启动Oracle实例。这些参数包括数据库名字、sga,pga的分配,控制文件的位置,undo,process等等。Oracle RAC数据库同样依赖于这些参数。除了所有单实例情形下的参数值外,RAC数据库还多出了一些重要的参数。本文主要描述RAC环境下的相关参数。 一、单实例下参数文件的重要参数 db_name db_block_size原创 2012-12-10 16:26:47 · 6489 阅读 · 0 评论