最近对linux数据库打201901的补丁,有很大的概率会出现libclntsh.so.11.1文件会被占用,此时集群无法启动,即使kill了也无法通过auto的方法打补丁。以下是手动修复的方法,请参考。
节点1
关闭集群,备份目录
crsctl stop crs tar -pcvf app.tar app --tar -pxvf app.tar
找出文件数量较多的目录,手动删除无效trace
ls -aR /oracle 2>/dev/null | awk '/\:$/{if(fileCount>999){print fileCount,dirName};dirName=substr($0,1,length($0)-1);fileCount=-2}{fileCount++}'
启动集群
export LANG=C
/oracle/app/11.2.0/grid/OPatch/opatch auto /oracle/psu/28813878 -ocmrf /oracle/app/11.2.0/grid/OPatch/ocm/bin/ocm.rsp
此时ORACLE的补丁都能正常打上,GRID的ACFS和Database Patch不会自动打上,因为libclntsh.so.11.1文件会被占用
28729234;OCW Patch Set Update : 11.2.0.4.190115 (28729234)
27959254;ACFS Patch Set Update : 11.2.0.4.180717 (27959254)
27734982;Database Patch Set Update : 11.2.0.4.180717 (27734982)
取消打补丁的窗口,关闭集群,手动打acfs和databse patch
crsctl stop crs -f
#root执行
/oracle/app/11.2.0/grid/crs/install/rootcrs.pl -unlock
/oracle/app/11.2.0/grid/crs/install/roothas.pl -unlock
#grid执行
export LANG=C
--28729245 ACFS PATCH SET UPDATE 11.2.0.4.190115
$ORACLE_HOME/OPatch/opatch napply -oh $ORACLE_HOME -local /oracle/psu/28813878/28729245 -ocmrf /oracle/app/11.2.0/grid/OPatch/ocm/bin/ocm.rsp
--28729262 DB PSU 11.2.0.4.190115 (INCLUDES CPUJan2019)
$ORACLE_HOME/OPatch/opatch napply -oh $ORACLE_HOME -local /oracle/psu/28813878/28729262 -ocmrf /oracle/app/11.2.0/grid/OPatch/ocm/bin/ocm.rsp
—如果出现以下报错则如下处理,没有出现直接跳过,建议打这个补丁先查下,如果有进程占用直接kill
Following executables are active :
/oracle/app/11.2.0/grid/lib/libclntsh.so.11.1
UtilSession failed: Prerequisite check "CheckActiveFilesAndExecutables" failed.
Log file location: /oracle/app/11.2.0/grid/cfgtoollogs/opatch/opatch2019-11-05_23-47-53PM_1.log
OPatch failed with error code 73
[root@udsdb1 ~]# fuser /oracle/app/11.2.0/grid/lib/libclntsh.so.11.1
/oracle/app/11.2.0/grid/lib/libclntsh.so.11.1: 27900m
[root@udsdb1 ~]# kill -9 27900
$ORACLE_HOME/OPatch/opatch napply -oh $ORACLE_HOME -local /oracle/psu/28813878/28729262 -ocmrf /oracle/app/11.2.0/grid/OPatch/ocm/bin/ocm.rsp
—如果出现以上报错则如下处理,没有出现直接跳过
[grid@udsdb1 ~]$ opatch lspatches 28729262;Database Patch Set Update : 11.2.0.4.190115 (28729262) 28729245;ACFS Patch Set Update : 11.2.0.4.190115 (28729245) 28729234;OCW Patch Set Update : 11.2.0.4.190115 (28729234)
打完之后,oracle bin执行脚本权限会变
cudsdb1[/home/oracle]$cd $ORACLE_HOME/bin
udsdb1[/oracle/app/oracle/product/11.2.0/db/bin]$ls -al oracle
-rwsr-s--x 1 oracle oinstall 239945856 11?. 5 23:36 oracle
chown oracle:asmadmin oracle
chmod 6751 oracle
root执行,还原权限,此过程会自动拉集群
/oracle/app/11.2.0/grid/crs/install/rootcrs.pl -patch /oracle/app/11.2.0/grid/crs/install/roothas.pl -patch
节点2重复上述步骤
打完之后更新字典,编译失效对象
更新数据字典,两边都要,一节点操作完,最后再二节点
cd $ORACLE_HOME/rdbms/admin sqlplus /nolog SQL> CONNECT / AS SYSDBA SQL> STARTUP SQL> @catbundle.sql psu apply SQL> QUIT cd $ORACLE_HOME/rdbms/admin sqlplus /nolog SQL> CONNECT / AS SYSDBA SQL> @utlrp.sql
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




