虚拟机安装10g rac的几点备忘
虚拟机安装10g rac的几点备忘
虚拟机安装10g rac的几点备忘
一、重新安装CRS需要做的事
在机群中的所有节点上执行$ORA_CRS_HOME/install/rootdelete.sh;
在机群中的任意一个节点上执行$ORA_CRS_HOME/install/rootdeinstall.sh;
dd清除ocr和vote disk
dd if=/dev/zero of=/dev/sdb1 bs=1M count=256
dd if=/dev/zero of=/dev/sdc1 bs=1M count=256
dd if=/dev/zero of=/dev/sdd1 bs=1M count=256
dd if=/dev/zero of=/dev/sde1 bs=1M count=256
rm -rf /var/tmp/.oracle /tmp/.oracle /etc/oracle /etc/oraInst.loc
rm -rf /etc/init.d/init.cssd /etc/init.d/init.crs /etc/init.d/init.crsd /etc/init.d/init.evmd
rm -rf /etc/rc2.d/K96init.crs /etc/rc2.d/S96init.crs
rm -rf /etc/rc3.d/K96init.crs /etc/rc3.d/S96init.crs
rm -rf /etc/rc5.d/K96init.crs /etc/rc5.d/S96init.crs
rm -rf /opt/app/oracle/oraInventory/* /opt/crs/oracle/product/10.2.0/crs_1/*
chown -R oracle:oinstall /opt/crs
chown -R oracle:oinstall /opt/app/oracle
chown -R oracle:oinstall /dev/raw
chown -R oracle:oinstall /dev/sd[b-f]1
rm -f /etc/inittab.crs
cp /etc/inittab.no_crs /etc/inittab
二、VMware Linux安装RAC出现Failure at final check of Oracle CRS stack 10的解决
1、开通了root的ssh
2、/dev/sd[b-f]1在配置文件中加入了shared
scsi1:0.shared = "true"
scsi1:1.shared = "true"
scsi1:2.shared = "true"
scsi1:3.shared = "true"
scsi1:4.shared = "true"
三、dbca配置asm时报:ORA-27102 out of memory解决方法:
#cat /proc/sys/kernel/shmmax
0
sysctl -p =>kernel.shmmax = 60129542144
因为:在32位Linux中共享内存段最大不能超过4G。如果在32位系统上设置SHMMAX值大于或等于4294967296 bytes (4 * 1024 * 1024 * 1024 = 4GB),参数SHMMAX会变为0。也就是说在32位系统上SHMMAX不能超过4294967295(4G-1byte)。这是32位系统的限制,升级到64位系统能够规避此问题。
解决方法:修改/etc/sysctl.conf中的kernel.shmmax = 4294967295,sysctl -p后dbca正常。
四、重启后无法oracleasm listdisks/scandisks
现象:
[root@dbrac2 kernel]# /etc/init.d/oracleasm listdisks
[root@dbrac2 kernel]# /etc/init.d/oracleasm scandisks
Scanning system for ASM disks: [FAILED]
[root@dbrac2 kernel]# /etc/init.d/oracleasm createdisk VOL1 /dev/sdg1
Marking disk "/dev/sdg1" as an ASM disk: Error opening manager: No such file or directory
[FAILED]
解决方法:双机重新执行#/etc/init.d/oracleasm configure
再执行/etc/init.d/oracleasm listdisks(/scandisk)均OK。
五、asm需要的CSS服务起不来
现象:
ps -ef|grep css
一个/bin/sh /etc/init.d/init.cssd fatal
几个/bin/sh /etc/init.d/init.cssd startcheck
解决方法:重新执行/etc/init.d/oracleasm configure重新配置一遍即可。
六、重启后/dev/raw/raw[1-5]和/dev/sd[b-n]1的属主重新变为root:disk的解决
之前我一直采用的是在/etc/rc.d/rc.local中增加以下两行:
chown -R oracle:oinstall /dev/raw
chown -R oracle:oinstall /dev/sd[b-n]1
可以临时解决。永久解决的方法如下:
在/etc/udev/permissions.d/50-udev.permissions中:
1、修改一行:
raw/*:root:disk:0660 --> raw/*:oracle:oinstall:0660
2、在sd*:root:disk:0660后增加如下一行:
sd[b-n]1:oracl3:oinstall:0660
七、双机时间同步的解决方法
在1号机的/etc/rc.d/rc.local中增加一行:service ntpd restart
在2号机运行while true; do; sleep 1; ntpdate dbrac1(1号机主机名); done
八、创建磁盘组时报:无法使用连接服务dbrac2:1521:+ASM2将磁盘组装载到远程节点dbrac2。请确保监听程序在此节点上运行,并且ASM实例已注册到监听程序。收到以下错误:
Listener refused the connection with the following err:
ORA-12523,......
此时,可用磁盘组的“状态”栏均为“MOUNTED(1/2)”
dbrac1上:v$asm_diskgroup的state均为MOUNTED
export ORACLE_SID=+ASM1
SQL>select name,stat from v$asm_diskgroup;
dbrac2上:均为DISMOUNTED。
解决方法:
在lsnrctl status有问题的节点运行netca重新配置监听,可能要在两节点间来回多次配置,我有一次就配置了4次才两遍都OK。
然后再次装载,所有可用磁盘组“状态”均为“MOUNTED(2/2)”,即为OK。
九、crs_stat -t显示db和inst Target=ONLINE State=OFFLINE处理
虚拟机自动启动后,报
[oracle@dbrac1 ~]$ crs_stat -t
Name Type Target State Host
------------------------------------------------------------
ora.dbrac.db application ONLINE OFFLINE
ora....c1.inst application ONLINE OFFLINE
ora....c2.inst application ONLINE OFFLINE
ora....SM1.asm application ONLINE ONLINE dbrac1
ora....C1.lsnr application ONLINE ONLINE dbrac1
ora.dbrac1.gsd application ONLINE ONLINE dbrac1
ora.dbrac1.ons application ONLINE ONLINE dbrac1
ora.dbrac1.vip application ONLINE ONLINE dbrac1
ora....SM2.asm application ONLINE ONLINE dbrac2
ora....C2.lsnr application ONLINE ONLINE dbrac2
ora.dbrac2.gsd application ONLINE ONLINE dbrac2
ora.dbrac2.ons application ONLINE ONLINE dbrac2
ora.dbrac2.vip application ONLINE ONLINE dbrac2
手工启动数据库报:
SQL> startup
ORA-01078: failure in processing system parameters
ORA-01565: error in identifying file '+DGARC/dbrac/spfiledbrac.ora'
ORA-17503: ksfdopn:2 Failed to open file +DGARC/dbrac/spfiledbrac.ora
ORA-15077: could not locate ASM instance serving a required diskgroup
解决方法:
将两边+ASM1/2实例shutdown后再startup即可从srvctl启动数据库。
后来,重启+ASM实例也没用了,解决方法就是运行/etc/init.d/oracleasm configure,重新配置后能listdisks,再重启+ASM实例可mount diskgroup。
后来的后来,发现执行oracleasm enable时,也能liskdisks,但是重启后又失效了。只好暂时将/etc/init.d/oracleasm enable写在/etc/rc.d/rc.local,能够正常启动数据库和实例。可能是因为ASMLIB的问题。
目录 返回
首页