缺包libcap.so.1 (安装grid软件)
cd /lib64
ls -lrt libcap*
ln -s libcap.so.2.22 libcap.so.1
[root@rac2 ~]# cd /lib64
[root@rac2 lib64]# ls -lrt libcap*
-rwxr-xr-x. 1 root root 23968 Aug 15 2015 libcap-ng.so.0.0.0
-rwxr-xr-x. 1 root root 20032 Mar 6 2017 libcap.so.2.22
lrwxrwxrwx. 1 root root 18 Jun 24 10:09 libcap-ng.so.0 -> libcap-ng.so.0.0.0
lrwxrwxrwx. 1 root root 14 Jun 24 10:09 libcap.so.2 -> libcap.so.2.22
[root@rac2 lib64]# ln -s libcap.so.2.22 libcap.so.1
[root@rac2 lib64]# ls -lrt libcap*
-rwxr-xr-x. 1 root root 23968 Aug 15 2015 libcap-ng.so.0.0.0
-rwxr-xr-x. 1 root root 20032 Mar 6 2017 libcap.so.2.22
lrwxrwxrwx. 1 root root 18 Jun 24 10:09 libcap-ng.so.0 -> libcap-ng.so.0.0.0
lrwxrwxrwx. 1 root root 14 Jun 24 10:09 libcap.so.2 -> libcap.so.2.22
lrwxrwxrwx. 1 root root 14 Jul 18 10:20 libcap.so.1 -> libcap.so.2.22
[root@rac2 lib64]#
无法启动ohas (grid软件root执行脚本)
Adding Clusterware entries to inittab
ohasd failed to start
Failed to start the Clusterware. Last 20 lines of the alert log follow:
2019-07-18 12:14:46.148:
[client(28204)]CRS-2101:The OLR was formatted using version 3.
解决方案:
touch /usr/lib/systemd/system/ohas.service
chmod 777 /usr/lib/systemd/system/ohas.service
vim /usr/lib/systemd/system/ohas.service
[Unit]
Description=Oracle High Availability Services
After=syslog.target
[Service]
ExecStart=/etc/init.d/init.ohasd run >/dev/null 2>&1 Type=simple
Restart=always
[Install]
WantedBy=multi-user.target
systemctl daemon-reload
systemctl enable ohas.service
执行root.sh报错时执行以下命令:
systemctl start ohas.service
安装数据库软件报错(dbca):
Error in invoking target 'agent nmhs' of makefile '/u01/app/oracle/product/11.2.0.4/db_1/sysman/lib/ins_emagent.mk'. See '/u01/app/oraInventory/logs/installActions2019-07-18_01-49-55PM.log' for details.
解决方案:
vim $ORACLE_HOME/sysman/lib/ins_emagent.mk
搜索以下行:
$(MK_EMAGENT_NMECTL)
改变为:
$(MK_EMAGENT_NMECTL) -lnnz11
然后回到图形界面点击:retry
Redhat7.3 Rac11gr2启停集群服务操作
以下实例以打补丁为例说明redhat7.3启停集群服务所需做的具体步骤。
以下操作使用root进行,并且已经添加GRID_HOME加入环境变量
由于redhat 7 采用systemctl进行进程管理。
安装过程中,采用的是手动添加的ohas服务,所以后续打补丁的时候,在使用crsctl stop cluster 命令停集群后,需要手动停止ohas服务 systemctl stop ohas.service
具体步骤如下:
停止集群服务:
停止rac2(需要打补丁的节点)上的集群服务
crsctl stop cluster -n rac2
[root@rac2 ~]# crsctl stop cluster -n rac2
CRS-2673: Attempting to stop 'ora.crsd' on 'rac2'
CRS-2790: Starting shutdown of Cluster Ready Services-managed resources on 'rac2'
CRS-2673: Attempting to stop 'ora.LISTENER.lsnr' on 'rac2'
CRS-2673: Attempting to stop 'ora.oc4j' on 'rac2'
CRS-2673: Attempting to stop 'ora.LISTENER_SCAN1.lsnr' on 'rac2'
CRS-2673: Attempting to stop 'ora.cvu' on 'rac2'
CRS-2673: Attempting to stop 'ora.ACFSDG.dg' on 'rac2'
CRS-2673: Attempting to stop 'ora.GRIDDG.dg' on 'rac2'
CRS-2673: Attempting to stop 'ora.registry.acfs' on 'rac2'
CRS-2673: Attempting to stop 'ora.rac.db' on 'rac2'
CRS-2677: Stop of 'ora.cvu' on 'rac2' succeeded
CRS-2672: Attempting to start 'ora.cvu' on 'rac1'
CRS-2676: Start of 'ora.cvu' on 'rac1' succeeded
CRS-2677: Stop of 'ora.LISTENER.lsnr' on 'rac2' succeeded
CRS-2673: Attempting to stop 'ora.rac2.vip' on 'rac2'
CRS-2677: Stop of 'ora.rac.db' on 'rac2' succeeded
CRS-2673: Attempting to stop 'ora.ARCH.dg' on 'rac2'
CRS-2673: Attempting to stop 'ora.DATADG.dg' on 'rac2'
CRS-2677: Stop of 'ora.LISTENER_SCAN1.lsnr' on 'rac2' succeeded
CRS-2673: Attempting to stop 'ora.scan1.vip' on 'rac2'
CRS-2677: Stop of 'ora.DATADG.dg' on 'rac2' succeeded
CRS-2677: Stop of 'ora.ARCH.dg' on 'rac2' succeeded
CRS-2677: Stop of 'ora.registry.acfs' on 'rac2' succeeded
CRS-2677: Stop of 'ora.rac2.vip' on 'rac2' succeeded
CRS-2672: Attempting to start 'ora.rac2.vip' on 'rac1'
CRS-2677: Stop of 'ora.scan1.vip' on 'rac2' succeeded
CRS-2672: Attempting to start 'ora.scan1.vip' on 'rac1'
CRS-2676: Start of 'ora.rac2.vip' on 'rac1' succeeded
CRS-2676: Start of 'ora.scan1.vip' on 'rac1' succeeded
CRS-2672: Attempting to start 'ora.LISTENER_SCAN1.lsnr' on 'rac1'
CRS-2677: Stop of 'ora.oc4j' on 'rac2' succeeded
CRS-2672: Attempting to start 'ora.oc4j' on 'rac1'
CRS-2676: Start of 'ora.LISTENER_SCAN1.lsnr' on 'rac1' succeeded
CRS-2677: Stop of 'ora.GRIDDG.dg' on 'rac2' succeeded
CRS-2676: Start of 'ora.oc4j' on 'rac1' succeeded
CRS-5022: Stop of resource "ora.ACFSDG.dg" failed: current state is "UNKNOWN"
CRS-2675: Stop of 'ora.ACFSDG.dg' on 'rac2' failed
CRS-2679: Attempting to clean 'ora.ACFSDG.dg' on 'rac2'
CRS-2681: Clean of 'ora.ACFSDG.dg' on 'rac2' succeeded
CRS-2673: Attempting to stop 'ora.asm' on 'rac2'
CRS-2677: Stop of 'ora.asm' on 'rac2' succeeded
CRS-2673: Attempting to stop 'ora.ons' on 'rac2'
CRS-2677: Stop of 'ora.ons' on 'rac2' succeeded
CRS-2673: Attempting to stop 'ora.net1.network' on 'rac2'
CRS-2677: Stop of 'ora.net1.network' on 'rac2' succeeded
CRS-2792: Shutdown of Cluster Ready Services-managed resources on 'rac2' has completed
CRS-2677: Stop of 'ora.crsd' on 'rac2' succeeded
CRS-2673: Attempting to stop 'ora.ctssd' on 'rac2'
CRS-2673: Attempting to stop 'ora.evmd' on 'rac2'
CRS-2673: Attempting to stop 'ora.asm' on 'rac2'
CRS-2677: Stop of 'ora.evmd' on 'rac2' succeeded
CRS-2677: Stop of 'ora.ctssd' on 'rac2' succeeded
CRS-2677: Stop of 'ora.asm' on 'rac2' succeeded
CRS-2673: Attempting to stop 'ora.cluster_interconnect.haip' on 'rac2'
CRS-2677: Stop of 'ora.cluster_interconnect.haip' on 'rac2' succeeded
CRS-2673: Attempting to stop 'ora.cssd' on 'rac2'
CRS-2677: Stop of 'ora.cssd' on 'rac2' succeede
停止crs服务:
[root@rac2 ~]# crsctl stop crs
查询如有残留的进程(使用ps -ef | grep grid 命令查询)或者上述存在报错的进程(ohas报错除外),则加-f参数再次执行crsctl stop crs
[root@rac2 ~]# crsctl stop crs -f
停止ohas服务:
[root@rac2 ~]# systemctl stop ohas.service
[root@rac2 ~]# systemctl status ohas.service
● ohas.service - Oracle High Availability Services
Loaded: loaded (/usr/lib/systemd/system/ohas.service; enabled; vendor preset: disabled)
Active: inactive (dead) since Wed 2019-12-18 16:06:10 CST; 5s ago
Main PID: 633 (code=killed, signal=TERM)
Dec 18 11:51:59 rac2 systemd[1]: Started Oracle High Availability Services.
Dec 18 11:51:59 rac2 systemd[1]: Starting Oracle High Availability Services...
Dec 18 16:06:10 rac2 systemd[1]: Stopping Oracle High Availability Services...
Dec 18 16:06:10 rac2 systemd[1]: Stopped Oracle High Availability Services.
查询是否仍然存在ohas进程
[root@rac2 ~]# ps –ef |grep init.ohasd
存在对应进程的话使用kill命令杀掉
根据 自动打补丁实例 章节方式打补丁
略
启动ohas服务:
[root@rac2 ~]# systemctl start ohas.service
启动crs服务:
启动crs的时候会自动把集群服务拉起来
[root@rac2 ~]#crsctl start crs
重复以上步骤对rac1打补丁
ACFS启动脚本
由于ACFS没有于集群的初始化启动脚本中,所以当启停或者服务器重启时候,DISK GROUPS所生成的volumn会处于disable状态,ACFS会处于umount阶段。所以需要手动处理
以下是针对ACFS的处理脚本:
可以把该脚本加到服务器的启动任务中:
以下红字部分根据实际情况修改,所有节点都需要做
#!/bin/bash
while [ true ]
do
ASM_PID=`ps -ef | grep +ASM|grep smon | grep -v grep | awk '{print $2}'`
if [ $ASM_PID ]
then
sleep 60
source /home/grid/.bash_profile
/u01/app/grid/11.2.0.4/bin/acfsroot enable
su grid -lc asmcmd <<EOF
volenable -G ACFSDG V_1
quit
EOF
mount /dev/asm/v_1-371 /V1
wait
break
fi
sleep 1
done
或者在ASM实例启动后,手动运行以下命令:
source /home/grid/.bash_profile
/u01/app/grid/11.2.0.4/bin/acfsroot enable
su grid -lc asmcmd <<EOF
volenable -G ACFSDG V_1
quit
EOF
mount /dev/asm/v_1-371 /V1