ORACLE RAC之--安装过程中碰到的问题及解决方法

简介:

 

ORACLE RAC之--安装过程中碰到的问题及解决方法

 

这一篇主要讨论整个RAC安装过程中碰到的问题以及是如何解决的。

错误一:

配置共享磁盘的问题。如果共享磁盘本身有内容,可能会导致在安装完CLUSTERWARE后,执行root.sh时出错,错误信息为:Failed to upgrade Oracle Cluster Registry configuration。

这时可以利用dd命令来清除ocr和voting disk的共享磁盘。类似命令为:

dd if=/dev/zero of=/dev/rdsk/c2t0d2s3 bs=1073741824 count=1

其中of指定需要清除的共享磁盘设备,而bs指定该设备的空间大小。

清除之后,再次运行root.sh,则问题消失。

错误二:

Oracle默认不会使用s0分区,如果指定了s0分区作为ocr或voting disk,那么在执行root.sh时也会收到同样的错误信息:Failed to upgrade Oracle Cluster Registry configuration。

这个时候可以指定其他的分区来替换s0分区。

错误三:

vip找不到public interface的问题。这个问题实际上是Oracle的bug。

Oracle认为192.168.*.*、10.*.*.*、172.16.*.*——172.31.*.*等ip属于private IP。因此无法自动绑定到interface上。

在使用cluvfy工具验证时会出现下面的错误:

ERROR: 
Could not find a suitable set of interfaces for VIPs.

而在安装完ClusterWare后,第二个节点执行root.sh脚本之后,会出现下面的错误:

The given interface(s), "ce0" is not public. Public interfaces should be used to configure virtual IPs.

这个的解决方法就是用root身份手工启动VIPCA,进行手工配置。

Oracle对这个问题的详细描述是:Doc ID:Note:316583.1:Subject:VIPCA FAILS COMPLAINING THAT INTERFACE IS NOT PUBLIC。

相关的bug信息是:Bug 4437727 - VIPCA FAILS COMPLAINING THAT INTERFACE IS NOT PUBLIC。

 

错误四:

那就是如果没有设置默认的网关信息,那么手工配置VIPCA的时候会出错。

如果/etc/defaultrouter没有正确的配置,那么启动vipca后,进行正确的配置。Oracle会执行6个步骤,Create VIP application resource、Create GSD application resource、Create ONS application resource、Start VIP application resource、Start GSD application resource、Start ONS application resource。

当执行到第四个步骤Starting VIP application resource时后出现错误。错误信息为:

CRS-1006: No more members to consider 
CRS-0215: Could not start resource 'racnode1-vip'. 
CRS-1006: No more members to consider 
CRS-0215: Could not start resource 'racnode2-vip'.

配置了默认路由,就可以解决这个问题了。

错误五:

也是在安装ClusterWare时碰到的。对于绑定PRIVATE ID的概念理解的不是很清晰,在加上cluvfy工具验证时出现的错误:

ERROR: 
Could not find a suitable set of interfaces for VIPs.

因此尝试手工通过下面的命令绑定VIP。

ifconfig eth0:1 plumb 
ifconfig eth0:1 172.25.198.224 netmask 255.255.0.0 broadcast 172.25.255.255 up

但是Oracle需要自动绑定这个虚拟IP,这种通过手工绑定的方式会导致ClusterWare安装配置IP时出现下面的错误:

SEVERE: The virtual hostname(s), vip-node1,vip-node2, you have specified appears to be already assigned to another system on the network

解决方法就是去掉手工绑定的VIP,通过Oracle的配置工具使得Oracle自动进行绑定。

错误六:

在数据库安装阶段碰到了。在Oracle编译racg_install时出现编译错误。检查log文件发现类似下面的问题:

makefile '/data/oracle/product/10.2/racg/lib/ins_has.mk' 的目标 'racg_install' 时出错。

在make.log中出现类型下面的错误:

racg_install// data /oracle/product/10.2/racg/lib/ins_has.mk:7: /data/oracle/product/10.2/crs/lib/env_has.mk: 没有那个文件或目录 make: *** 没有规则可以创建目标“/data/oracle/product/10.2/crs/lib/env_has.mk”。 停止。

根据错误信息发现是找不到env_has.mk文件造成的问题。而这个错误居然在METALINK和GOOGLE上都找不到产生问题的原因。

到$ORACLE_HOME/crs/lib目录下,确实找不到相应的env_has.mk。但是在$ORACLE_HOME/crs/crs/lib目录下可以找到这个文件。

造成这个错误出现的主要原因是CRS的主目录和ORACLE_HOME主目录出现冲突。

当时设置的ORACLE_HOME是/data/oracle/product/10.2,而安装Oracle的ClusterWare时指定的主目录是/data/oracle/product/10.2/crs。由于两个目录存在着嵌套关系,导致了这个问题的产生。

而后将ORACLE_HOME设置为/data/oracle/product/10.2/database,而Oracle的ClusterWare目录不变,仍为/data/oracle/product/10.2/crs,错误不在出现。

错误七:

在第二次重建系统时出现的。由于存储设备没有进行格式化。因此存储设备本身保留了ASM的配置信息。

这种情况下第一次已经分配的ASM磁盘对于新的ASM实例是不可用的。

解决方法是通过第一个问题中介绍的清除ocr和voting disk的方式来清除裸设备的信息,比如:

dd if=/dev/zero of=/dev/rdsk/c2t0d2s3 bs=1073741824 count=1

更为重要的是,选择ASM磁盘组的时候,不能选择和上次配置同名的磁盘组,否则会出现错误信息:ORA-15032和ORA-15063。

指定另外的ASM磁盘组名称后,问题得以解决。

错误八:

在安装5117016补丁集后出现的节点2上的数据库无法启动的错误。

错误信息为:

ORA-01078: failure in processing system parameters 
ORA-01565: error in identifying file '+DISK/testrac/spfiletestrac.ora' 
ORA-17503: ksfdopn:2 Failed to open file +DISK/testrac/spfiletestrac.ora 
ORA-03113: end-of-file on communication channel

同时从后台的alert文件中可以看到如下的错误:

Errors in file /data/oracle/admin/testrac/udump/testrac2_ora_4598.trc: 
ORA-07445: 出现异常错误: 核心转储 [kkxcms()+1160] [SIGSEGV] [Address not mapped to object] [0x000000168] [] []

Oracle的Note:390591.1上有详细的描述和解决方法。

整个过程碰到的比较麻烦和难于处理的问题都已经列出来了。安装过程中碰到的小问题更多。可能这些问题对于一个有了一定安装经验的人来说,不算什么。但是对于缺少安装经验的人或者第一次尝试安装RAC环境的人,每个问题都是一次考验。考验你是否进行了充分的知识准备;考验你的问题分析、解决能力;考验你搜索、寻找问题解决方法的能力;最重要的是考验你的信心、耐心和毅力。

 

 

     本文转自vcdog 51CTO博客,原文链接:http://blog.51cto.com/255361/837522,如需转载请自行联系原作者


相关文章
|
12天前
|
Oracle 关系型数据库 数据库
如何利用 Docker 安装 Oracle 数据库
【2月更文挑战第14天】
127 0
|
12天前
|
Oracle 关系型数据库 数据库
Oracle数据库协议适配器错误解决方法
Oracle数据库协议适配器错误解决方法
14 2
|
12天前
|
SQL Oracle 关系型数据库
ORACLE错误码及解决方法
ORACLE错误码及解决方法
13 0
|
12天前
|
SQL Oracle 关系型数据库
实验一 安装和使用Oracle数据库
实验一 安装和使用Oracle数据库
23 1
|
12天前
|
Oracle 关系型数据库 Linux
SuSE linux server 11通过SAP来安装oracle11g
SuSE linux server 11通过SAP来安装oracle11g
15 0
|
12天前
|
Linux 数据安全/隐私保护 Docker
在centos7虚拟机上安装docker oracle11g
在centos7虚拟机上安装docker oracle11g
31 0
|
12天前
|
Oracle 关系型数据库 数据库
Oracle 11gR2学习之一(安装篇)
Oracle 11gR2学习之一(安装篇)
|
12天前
|
存储 Oracle 关系型数据库
Oracle RAC:数据库集群的舞动乐章
【4月更文挑战第19天】Oracle RAC是Oracle提供的高可用性数据库解决方案,允许多个实例共享同一数据库,确保业务连续性和数据完整性。通过集群件和全局缓存服务实现服务器间的协调和通信。RAC提供高可用性,通过故障转移应对故障,同时提升性能,多个实例并行处理请求。作为数据管理员,理解RAC的架构和管理至关重要,以发挥其在数据管理中的最大价值。
|
12天前
|
存储 运维 Oracle
Oracle系列十八:Oracle RAC
Oracle系列十八:Oracle RAC
|
12天前
|
存储 Oracle 关系型数据库
手把手教你安装Oracle——以oracle 11g为例
手把手教你安装Oracle——以oracle 11g为例
手把手教你安装Oracle——以oracle 11g为例