常见安装、管理错误
1. 安装CRS失败,或执行root.sh报错,可能原因:
(1) 节点间的时间不同步,解决方法:使用ntp服务
(2) Linux下启用了默认的防火墙,导致执行root.sh报错:
Failure at final check of Oracle CRS stack.
10
解决方法:禁用iptables ,注释/etc/pam.d/other ;
- # service iptables stop; # chkconfig iptables off.
(3) 裸设备的权限问题,可能因为操作系统重新启动后权限发生变化。(RHEL4)
解决方法: 把 chown oracle:dba /dev/raw/raw* 命令加入到/etc/rc.local中,每次开机自动执行
或者修改文件/etc/udev/permissions.d/50-udev.permissions
第113行raw/*:root:disk:0660 改成 raw/*:oracle:dba:0660
(4) Solaris使用了包括cylinder 0的磁盘分区来存储OCR或者vote disk。
解决办法:相关分区不应该包括cylinder 0,可以从1开始。
(5) 使用的公网IP地址不可路由,
解决方法:添加相关网关
(6) 在/etc/hosts 中没有loopback地址,即127.0.0.1 localhost
(7) 主机名含有大些字母、减号或者下划线等特殊字符;
(8) HPUX中oracle不要使用gnu的bash,修改使用默认shell;
(9) 检查操作系统、第三方集群是否是oracle官方支持的,是否需要补丁,比如在AIX5.3+HACMP上安装
Oracle 10g/11g RAC,oslevel就需要06及以上;
(10) AIX平台,需要将共享设备的reserve_policy (reserve_lock) 属性修改为no_reserve(no);
(11) 所有节点看到的OCR和vote设备的路径名应该一致,如果不一致,可以用软连接解决;
(12) 心跳设备问题或者ocr/votedisk 访问问题,unix/linux查看有无/tmp/crsctl.*文件,得到错误信息;
(13) 在CRS旧的安装的环境中重新安装失败
解决方法: dd清除ocr和vote disk,并使用下面语句清理旧的crs配置文件
- rm -rf /usr/tmp/.oracle /var/tmp/.oracle /tmp/.oracle /etc/oracle/* /var/opt/oracle/*
- rm -rf /etc/init.cssd /etc/init.crs* /etc/init.evmd /etc/init.d/init.cssd /etc/init.d/init.crs
- rm -rf /etc/init.d/init.crsd /etc/init.d/init.evmd /etc/rc3.d/K96init.crs /etc/rc3.d/S96init.crs
- rm -rf /etc/rc.d/rc2.d/K96init.crs /etc/rc.d/rc2.d/S96init.crs
2 客户端有时候报错:
ORA-12545: Connect failed because target host or object does not exist
ORA-12545: 因目标主机或对象不存在, 连接失败
解决方法:设置local_listener初始化参数
3 如果选择节点界面出不来。
(1)HACMP环境中需要检查oracle 用户必须在 hagsuser组里.
(2)如果是hacmp5.4,需要打Oracle补丁6718715;
(3)可以使用集群配置文件cluster CONFIGURATION FILE ,内容模板如下:
- MyCluster
- rac01 rac01-priv rac01-vip
- rac02 rac02-priv rac02-vip
- rac03 rac03-priv rac03-vip
- rac04 rac04-priv rac04-vip
4. AIX上数据库启动报错
- ora-27504 IPC error creating OSD context
- ora-27300 OS system dependent operation:sendmsg failed with status:59
- ora-27301 OS failure message:Message too long
- ora-27302 failure occurred at:sskgxpsnd1
原因:没有设置网络参数udp_recvspace/udp_sendspace
5. Windows平台,ORA-600 [kccsbck_first]
解决方法:关闭Media Sense(媒体感知)
6. 系统循环重启:
可能是CRS导致,如果因为crs,首先设置 crsctl disable crs 来禁止oracle crs的自动启动。
查看OS、crsd和cssd的对应日志,看/tmp/下是否有crs文件 (ls -lrt /tmp/crsctl*),确定crs失败原因。
7. 第二个节点的数据实例无法mount,挂起或者报错,
原因1:使用了vendor clusterware ,libskgxn2.so文件链接错误,
解决方法:比较两个节点的ORACLE_HOME/lib/libskgxn2和CRS_HOME/lib/libskgxn2*都是否相同,
如果不同需要重新link
原因2:任何平台Oracle 9i,没有设置网络参数udp参数
导致udp_sendspace或者udp_recvspace小于 db_block_size * db_file_multiblock_read_count
解决方法:设置对应参数,如AIX上设置udp_recvspace = 65536 udp_sendspace = 65536
原因3:AIX/HACMP/Oracle9i,在hacmp中定义了service IP
解决方法:在初始化参数中定义cluster_interconnects
原因4:任何平台,设置了错误的cluster_interconnects
解决方法:检查并纠正此参数,
8. 建库时不能识别裸设备;
原因1:Oracle,10.2.0.3 ,很多平台(比如aix和linux)有rawutl相关bug,
解决办法:还原10.2.0.1中的rawutl工具,该程序在 $ORACLE_HOME/bin目录中。
原因2:Oracle9i,AIX平台,需要设置环境变量export PGSD_SUBSYS=grpsvcs
9. evm资源自动报错oac_init:2: Could not connect to server, clsc retcode = 9
解决方法:关闭 “UDP ICMP rejections”
- /etc/rc.d/init.d/iptables stop ;chkconfig iptables off