Using ‘opatch lsinventory’ show patched is real? (看到的补丁信息真的靠谱么?)

张维照 2019-05-31
13
0 0
摘要:如果是从别人手中接手的数据库,通常从opatch lsinventory 检查数据库的版本和补丁信息,在12C 的版本中也可以使用DBMS_QOPATCH, 但是有一个库发现之前别人挖了个坑实际安装补丁时应试是出错了,但是从opatch lsinventory查看两节点并没有区别

问题描述

去年在排查SCN 天花板问题修改相关的几个参数时,发现了这个问题,尤其如果是从别人手中接手的数据库,通常从opatch lsinventory 检查数据库的版本和补丁信息,在12C 的版本中也可以使用DBMS_QOPATCH,  但是有一个库发现之前别人挖了个坑实际安装补丁时应试是出错了,但是从opatch lsinventory查看两节点并没有区别, 环境是11.2.0.3.7 on hpux的环境

专家解答

下面简单记录一下这个问题。

Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit Production
With the Partitioning, Real Application Clusters, OLAP, Data Mining
and Real Application Testing options


USERNAME             INST_NAME            HOST_NAME                 SID   SERIAL#  VERSION    STARTED  SPID            OPID  CPID            SADDR            PADDR
-------------------- -------------------- ------------------------- ----- -------- ---------- -------- --------------- ----- --------------- ---------------- ----------------
SYS                  anbob1               weejar1                    4075  31725    11.2.0.3.0 20150814 517             1360  508             C0000010C2845008 C0000010C9D42C98

-ne 

SQL> select * from registry$history;

ACTION_TIME                       ACTION        VERSION      COMMENTS           BUNDLE_SERIES
--------------------------------- ------------- ------------ ------------------ ------------------------------
01-APR-15 09.22.20.862498 PM      APPLY         11.2.0.3     PSU 11.2.0.3.7     PSU
01-APR-15 09.41.35.590942 PM      APPLY         11.2.0.3     PSU 11.2.0.3.7     PSU

使用opatch lsinventory查看版本信息

oracle@weejar2:/oracle/app/oracle/product/11.2.0.3/dbhome_1/OPatch> opatch lsinventory
Oracle Interim Patch Installer version 11.2.0.3.11
Copyright (c) 2015, Oracle Corporation.  All rights reserved.


Oracle Home       : /oracle/app/oracle/product/11.2.0.3/dbhome_1
Central Inventory : /oracle/app/oraInventory
   from           : /oracle/app/oracle/product/11.2.0.3/dbhome_1/oraInst.loc
OPatch version    : 11.2.0.3.11
OUI version       : 11.2.0.3.0
Log file location : /oracle/app/oracle/product/11.2.0.3/dbhome_1/cfgtoollogs/opatch/opatch2015-12-03_09-08-18AM_1.log

Lsinventory Output file location : /oracle/app/oracle/product/11.2.0.3/dbhome_1/cfgtoollogs/opatch/lsinv/lsinventory2015-12-03_09-08-18AM.txt

--------------------------------------------------------------------------------
Local Machine Information::
Hostname: weejar2
ARU platform id: 197
ARU platform description:: HP-UX Itanium
Installed Top-level Products (1): 
Oracle Database 11g                                                  11.2.0.3.0
There are 1 products installed in this Oracle Home.


Interim patches (27) :

...
atch  16619892     : applied on Tue Jun 09 17:59:30 GMT+08:00 2015
Unique Patch ID:  16379830
Patch description:  "Database Patch Set Update : 11.2.0.3.7 (16619892)"   <<<<<<<<<<<<<<<<<<<<<<<
   Created on 26 Jun 2013, 00:30:09 hrs PST8PDT
Sub-patch  16056266; "Database Patch Set Update : 11.2.0.3.6 (16056266)"
Sub-patch  14727310; "Database Patch Set Update : 11.2.0.3.5 (14727310)"
Sub-patch  14275605; "Database Patch Set Update : 11.2.0.3.4 (14275605)"
Sub-patch  13923374; "Database Patch Set Update : 11.2.0.3.3 (13923374)"
Sub-patch  13696216; "Database Patch Set Update : 11.2.0.3.2 (13696216)"
Sub-patch  13343438; "Database Patch Set Update : 11.2.0.3.1 (13343438)"
   Bugs fixed:
     13593999, 13566938, 10350832, 14138130, 12919564, 13561951, 13624984
     13588248, 13080778, 13914613, 13804294, 14258925, 12873183, 13645875
     14472647, 12880299, 14664355, 12998795, 14409183, 13719081, 14469008
...
Patch  16619898     : applied on Tue Jun 09 17:54:08 GMT+08:00 2015
Unique Patch ID:  16416182
Patch description:  "Grid Infrastructure Patch Set Update : 11.2.0.3.7 (16742216)"   <<<<<<<<<<<<<<<<<<<<<<<
   Created on 3 Jul 2013, 21:14:22 hrs PST8PDT
   Bugs fixed:
     16619898, 16315641, 15876003, 14275572, 13919095, 13696251, 13348650
     13430715, 14271305, 14082976, 16210540, 13719731, 14242977, 12849377
	 ....

TIP:
从上面看貌似数据库现在的版本是11.2.0.3.7 ,但是真的是这样么?我们以SCN 相关的三个参数为例

-- 节点1
SQL> @p scn

NAME                                              VALUE
----------------------------------------          ----------------------------------------
_external_scn_rejection_delta_threshold_minutes                  <<<<<<<<<<<<<<<<<<<<<<
_broadcast_scn_wait_timeout                       10
_disable_latch_free_SCN_writes_via_32cas          FALSE
_disable_latch_free_SCN_writes_via_64cas          FALSE
_external_scn_rejection_threshold_hours           24             <<<<<<<<<<<<<<<<<<<<<<
_max_reasonable_scn_rate                          32768
_external_scn_logging_threshold_seconds           172800         <<<<<<<<<<<<<<<<<<<<<<
_max_pending_scn_bcasts                           8
_gc_check_bscn                                    TRUE
_gc_global_checkpoint_scn                         TRUE
db_unrecoverable_scn_tracking                     TRUE
_scn_wait_interface_max_timeout_secs              2147483647
_scn_wait_interface_max_backoff_time_secs          600                                                                                                  
_enable_minscn_cr                                 TRUE
_fbda_global_bscn_lag                             0
_kdli_recent_scn                                  FALSE
_enable_cscn_caching                              FALSE
_enable_scn_wait_interface                        TRUE

18 rows selected.

-- 节点2
SQL> @p scn

NAME                                          VALUE
----------------------------------------      ----------------------------------------
_broadcast_scn_wait_timeout                   10
_disable_latch_free_SCN_writes_via_32cas      FALSE
_disable_latch_free_SCN_writes_via_64cas      FALSE
_minimum_giga_scn                             0                <<<<<<<<<<<<<<<<<<<
_max_reasonable_scn_rate                      32768
_reasonable_scn_offset_seconds                0                <<<<<<<<<<<<<<<<<<<
_max_pending_scn_bcasts                       8
_gc_check_bscn                                TRUE
_gc_global_checkpoint_scn                     TRUE
db_unrecoverable_scn_tracking                 TRUE
_scn_wait_interface_max_timeout_secs          2147483647
_scn_wait_interface_max_backoff_time_secs     600                                             
_enable_minscn_cr                             TRUE
_fbda_global_bscn_lag                         0
_kdli_recent_scn                              FALSE
_enable_cscn_caching                          FALSE
_enable_scn_wait_interface                    TRUE

17 rows selected.

# node1
SQL> select indx,inst_id,ksppinm,ksppity from x$ksppi 
where ksppinm='_external_scn_logging_threshold_seconds';

      INDX    INST_ID KSPPINM                                          KSPPITY
---------- ---------- --------------------------------------------- ----------
       902          1 _external_scn_logging_threshold_seconds                3
	
# node2	
SQL> select indx,inst_id,ksppinm,ksppity from x$ksppi 
where ksppinm='_external_scn_logging_threshold_seconds';

no rows selected

SQL> select indx,inst_id,ksppinm,ksppity from x$ksppi where indx=902;

      INDX    INST_ID KSPPINM                                      KSPPITY
---------- ---------- ----------------------------------------- ----------
       902          2 _reasonable_scn_offset_seconds                     3	

NOTE:
可以看到节点2 的参数和节点1 就不一致, 节点1 参数正常,节点2 的参数中居然还有在11.2.0.3.7已经remove的参数。我们下面对比一下oracle 执行文件大小。

# node1
[oracle@weejar1:/oracle/app/oracle/product/11.2.0.3/dbhome_1/bin] ls -l oracle*
-rwsr-s--x   1 oracle     oinstall   553756096 Aug 14 00:31 oracle
-rwsr-s--x   1 oracle     oinstall   553754152 Jun  9 18:16 oracleO# node2
oracle@weejar2:/home/oracle> cd $ORACLE_HOME/bin
oracle@weejar2:/oracle/app/oracle/product/11.2.0.3/dbhome_1/bin> ls -l oracle*
-rwsr-s--x   1 oracle     oinstall   553610432 Jun  9 16:30 oracle
-rwxr-x---   1 oracle     oinstall         0 Jun  9 16:31 oracleO

Note:
可以看到两个节点执行文件大小也不一致, 节点1 的和其它数据库相同版本相同平台的大小都一致, 另外注意一下路径中有个oracleO的文件, 这个文件类型于move 原来的oracle版本的执行文件 to oracleO, 再编译生成最新的oracle执行文件, 所以也可以说是oracleO文件是上次最近的一次升级前的执行文件, 未安装过PS该oracleO文件的大小为0, 所以也可以确认节点2 的oracle执行文件 并未更新过.(linux平台可以strings 从oracle执行文件中grep 参数,但是hpux 不可以), 其实我们可以大胆的猜想 数据库应该是7-9 16:30 左右安装,当天18:16 左右安装了一次PATCH, 最近一次安装PATCH 是在8-14,三个时间点。

# node 1
[oracle@weejar1:/oracle/app/oracle/product/11.2.0.3/dbhome_1/lib] strings libserver11.a |grep "external_scn"
Parameter value %s is invalid for _external_scn_rejection_delta_threshold_minutes
_external_scn_rejection_delta_threshold_minutes
_external_scn_rejection_threshold_hours
_external_scn_logging_threshold_seconds 

# node2
oracle@weejar2:/oracle/app/oracle/product/11.2.0.3/dbhome_1/lib> strings libserver11.a |grep "external_scn"
Parameter value %s is invalid for _external_scn_rejection_delta_threshold_minutes
_external_scn_rejection_delta_threshold_minutes
_external_scn_rejection_threshold_hours
_external_scn_logging_threshold_seconds

Note: 可以看到libserver11.a 类库文件其实是已经更新了的。 后来我尝试把oracle软件包 copy了个新路径,relink测试, 下面只附问分日志

- Linking recovery manager (rman)
        rm -f /oracle/app/newoh/dbhome_1/rdbms/lib/rman
            cc -Wl,+k -Wl,+s -Wl,+n +DD64 -o /oracle/app/newoh/dbhome_1/rdbms/lib/rman -L/oracle/app/newoh/dbhome_1/rdbms/lib/ -L/oracle/app/newoh/dbhome_1/lib/   /oracle/app/newoh/dbhome_1/lib/s0main
.o /oracle/app/newoh/dbhome_1/rdbms/lib/sskrmed.o /oracle/app/newoh/dbhome_1/rdbms/lib/skrmpt.o  -ldbtools11 -lclient11 -lsql11 -lpls11  -lplp11  -lsnls11 -lunls11 -lnls11  -lslax11 -lpls11  -lplp11 /
oracle/app/newoh/dbhome_1/lib/libplc11.a -lclntsh  `cat /oracle/app/newoh/dbhome_1/lib/ldflags`    -lncrypt11 -lnsgr11 -lnzjs11 -ln11 -lnl11 -lnro11 `cat /oracle/app/newoh/dbhome_1/lib/ldflags`    -ln
crypt11 -lnsgr11 -lnzjs11 -ln11 -lnl11 -lnnz11 -lzt11 -lztkg11 -lztkg11 -lclient11 -lnnetd11  -lvsn11  -lcommon11 -lgeneric11 -lmm -lsnls11 -lnls11  -lcore11 -lsnls11  -lnls11 -lcore11 -lsnls11 -lnls1
1 -lxml11  -lcore11 -lunls11 -lsnls11 -lnls11 -lcore11 -lnls11 `cat /oracle/app/newoh/dbhome_1/lib/ldflags`    -lncrypt11 -lnsgr11 -lnzjs11 -ln11 -lnl11 -lnro11 `cat /oracle/app/newoh/dbhome_1/lib/ldf
lags`    -lncrypt11 -lnsgr11 -lnzjs11 -ln11 -lnl11 -lclient11 -lnnetd11  -lvsn11  -lcommon11 -lgeneric11   -lsnls11 -lnls11  -lcore11 -lsnls11  -lnls11 -lcore11 -lsnls11 -lnls11 -lxml11  -lcore11 -lun
ls11 -lsnls11 -lnls11 -lcore11 -lnls11  -lclient11 -lnnetd11  -lvsn11  -lcommon11 -lgeneric11 -lsnls11 -lnls11  -lcore11 -lsnls11  -lnls11 -lcore11 -lsnls11 -lnls11 -lxml11  -lcore11 -lunls11 -lsnls11
 -lnls11 -lcore11 -lnls11   `cat /oracle/app/newoh/dbhome_1/lib/sysliblist`  -lm    `cat /oracle/app/newoh/dbhome_1/lib/sysliblist` -ldl -lm  -lpthread -lrt  -lpthread
        test ! -f /oracle/app/newoh/dbhome_1/bin/rman ||\
           mv -f /oracle/app/newoh/dbhome_1/bin/rman /oracle/app/newoh/dbhome_1/bin/rmanO
        mv /oracle/app/newoh/dbhome_1/rdbms/lib/rman /oracle/app/newoh/dbhome_1/bin/rman
        chmod 751 /oracle/app/newoh/dbhome_1/bin/rman
        chmod 755 /oracle/app/newoh/dbhome_1/bin
        rm -f /oracle/app/newoh/dbhome_1/rdbms/lib/libskgxp11.a

 - Linking Oracle
        rm -f /oracle/app/newoh/dbhome_1/rdbms/lib/oracle
         cc +DD64  -Wl,+k -Wl,+s -Wl,+n +DD64 -o /oracle/app/newoh/dbhome_1/rdbms/lib/oracle -L/oracle/app/newoh/dbhome_1/rdbms/lib/ -L/oracle/app/newoh/dbhome_1/lib/   /oracle/app/newoh/dbhome_1/rdbm
s/lib/ssoident.o `if /usr/bin/getconf KERNEL_BITS | grep "64" > /dev/null ; \
                then echo "-Wl,+pi,16M -Wl,+pd,L -Wl,+padtext,16M -Wl,+paddata,1M" ; \
                else echo "" ; fi` -Wl,-E -Wl,-PF,/oracle/app/newoh/dbhome_1/rdbms/lib/linkorderfile +FPd /oracle/app/newoh/dbhome_1/rdbms/lib/opimai.o /oracle/app/newoh/dbhome_1/rdbms/lib/ssoraed.o /
oracle/app/newoh/dbhome_1/rdbms/lib/ttcsoi.o   -Wl,+forceload -lperfsrv11 -Wl,+noforceload /oracle/app/newoh/dbhome_1/lib/nautab.o /oracle/app/newoh/dbhome_1/lib/naeet.o /oracle/app/newoh/dbhome_1/lib
/naect.o /oracle/app/newoh/dbhome_1/lib/naedhs.o /oracle/app/newoh/dbhome_1/rdbms/lib/config.o  -lserver11 -lodm11 -lcell11  -lnnet11 -lskgxp11 -lsnls11 -lnls11  -lcore11 -lsnls11  -lnls11 -lcore11 -l
snls11 -lnls11 -lxml11  -lcore11 -lunls11 -lsnls11 -lnls11 -lcore11 -lnls11 -lclient11  -lvsn11  -lcommon11 -lgeneric11  -lknlopt `if /usr/ccs/bin/ar tv /oracle/app/newoh/dbhome_1/rdbms/lib/libknlopt.
a | grep xsyeolap.o > /dev/null 2>&1 ; then echo "-loraolap11" ; fi`  -lslax11 -lpls11  -lplp11 -lserver11 -lclient11  -lvsn11  -lcommon11 -lgeneric11 `if [ -f /oracle/app/newoh/dbhome_1/lib/libavserv
er11.a ] ; then echo "-lavserver11" ; else echo "-lavstub11"; fi` `if [ -f /oracle/app/newoh/dbhome_1/lib/libavclient11.a ] ; then echo "-lavclient11" ; fi`  -lknlopt -lslax11 -lpls11  -lplp11 -ljavav
m11 -lserver11   -lwwg  `cat /oracle/app/newoh/dbhome_1/lib/ldflags`    -lncrypt11 -lnsgr11 -lnzjs11 -ln11 -lnl11 -lnro11 `cat /oracle/app/newoh/dbhome_1/lib/ldflags`    -lncrypt11 -lnsgr11 -lnzjs11 -
ln11 -lnl11 -lnnz11 -lzt11 -lztkg11 -lmm -lsnls11 -lnls11  -lcore11 -lsnls11  -lnls11 -lcore11 -lsnls11 -lnls11 -lxml11  -lcore11 -lunls11 -lsnls11 -lnls11 -lcore11 -lnls11 -lztkg11 `cat /oracle/app/n
ewoh/dbhome_1/lib/ldflags`    -lncrypt11 -lnsgr11 -lnzjs11 -ln11 -lnl11 -lnro11 `cat /oracle/app/newoh/dbhome_1/lib/ldflags`    -lncrypt11 -lnsgr11 -lnzjs11 -ln11 -lnl11 -lnnz11 -lzt11 -lztkg11   -lsn
ls11 -lnls11  -lcore11 -lsnls11  -lnls11 -lcore11 -lsnls11 -lnls11 -lxml11  -lcore11 -lunls11 -lsnls11 -lnls11 -lcore11 -lnls11 `if /usr/ccs/bin/ar tv /oracle/app/newoh/dbhome_1/rdbms/lib/libknlopt.a
| grep "kxmnsd.o" > /dev/null 2>&1 ; then echo " " ; else echo "-lordsdo11"; fi` -L/oracle/app/newoh/dbhome_1/ctx/lib/ -lctxc11 -lctx11 -lzx11 -lgx11 -lctx11 -lzx11 -lgx11 -lordimt11  -lclsra11 -ldbcf
g11 -lhasgen11 -lskgxn2 -lnnz11 -lzt11 -lxml11 -locr11 -locrb11 -locrutl11  -lhasgen11 -lskgxn2 -lnnz11 -lzt11 -lxml11    -loraz -llzopro -lorabz2      -lsnls11 -lnls11  -lcore11 -lsnls11  -lnls11 -lc
ore11 -lsnls11 -lnls11 -lxml11  -lcore11 -lunls11 -lsnls11 -lnls11 -lcore11 -lnls11 -lsnls11 -lunls11  -lsnls11 -lnls11  -lcore11 -lsnls11  -lnls11 -lcore11 -lsnls11 -lnls11 -lxml11  -lcore11 -lunls11
 -lsnls11 -lnls11 -lcore11 -lnls11  -lasmclnt11 -lcommon11 -lcore11     `cat /oracle/app/newoh/dbhome_1/lib/sysliblist`  -lm    `cat /oracle/app/newoh/dbhome_1/lib/sysliblist` -ldl -lm  -lpthread -lrt
  -lpthreadld: Unsatisfied protected symbol "kgfmReloadConfig" in file "/oracle/app/newoh/dbhome_1/lib//libserver11.a[kfd.o]"
ld: Unsatisfied protected symbol "kgfmIsOdaTestPriv" in file "/oracle/app/newoh/dbhome_1/lib//libserver11.a[kfd.o]"
ld: Unsatisfied protected symbol "kgfmDumpCtx" in file "/oracle/app/newoh/dbhome_1/lib//libserver11.a[kfd.o]"
ld: Unsatisfied protected symbol "kfgpGetTemplate" in file "/oracle/app/newoh/dbhome_1/lib//libserver11.a[kfdp.o]"4 errors.

Stop.
*** Error exit code 1
Error in invoking target 'irman ioracle' of makefile '/oracle/app/newoh/dbhome_1/rdbms/lib/ins_rdbms.mk'. See '/oracle/app/newoh/dbhome_1/install/relinkActions2015-12-10_04-48-38-PM.log' for details.
        /usr/ccs/bin/make -f /oracle/app/newoh/dbhome_1/sysman/lib/ins_emagent.mk relink_sharedobj SHAREDOBJ=libnmemso
        /usr/ccs/bin/ld +s -G -b -o /oracle/app/newoh/dbhome_1/sysman/lib/libnmemso.so -c /oracle/app/newoh/dbhome_1/sysman/lib/libnmemso.def  -L/oracle/app/newoh/dbhome_1/lib  -L/oracle/app/newoh/dbh
ome_1/sysman/lib/  +b /oracle/app/newoh/dbhome_1/lib/:/oracle/app/newoh/dbhome_1/sysman/lib/:/oracle/app/newoh/dbhome_1/lib32  /oracle/app/newoh/dbhome_1/sysman/lib/libnmem.a  /oracle/app/newoh/dbhome
_1/sysman/lib/libnmer.a /oracle/app/newoh/dbhome_1/sysman/lib/libnmnl.a /oracle/app/newoh/dbhome_1/sysman/lib/libnmnp.a  /oracle/app/newoh/dbhome_1/sysman/lib/libnmeu.a  /oracle/app/newoh/dbhome_1/sys
man/lib/libnmeps.a  /oracle/app/newoh/dbhome_1/sysman/lib/libnmt.a    /oracle/app/newoh/dbhome_1/sysman/lib/libnml.a  /oracle/app/newoh/dbhome_1/sysman/lib/libnmee.a  /oracle/app/newoh/dbhome_1/sysman
/lib/libnmefmgr.a /oracle/app/newoh/dbhome_1/sysman/lib/libnmevr.a  /oracle/app/newoh/dbhome_1/sysman/lib/libnmehu.a /oracle/app/newoh/dbhome_1/sysman/lib/libnmehl.a  /oracle/app/newoh/dbhome_1/sysman
/lib/libnmepm.a /oracle/app/newoh/dbhome_1/sysman/lib/libnmecrmgr.a /oracle/app/newoh/dbhome_1/sysman/lib/libnmedc.a /oracle/app/newoh/dbhome_1/sysman/lib/libnmedt.a  /oracle/app/newoh/dbhome_1/sysman
/lib/libnmosudo.a /oracle/app/newoh/dbhome_1/sysman/lib/libnmedm.a /oracle/app/newoh/dbhome_1/sysman/lib/libnmedr.a  /oracle/app/newoh/dbhome_1/sysman/lib/libnmeb.a  /oracle/app/newoh/dbhome_1/sysman/
lib/libnmec.a   /oracle/app/newoh/dbhome_1/sysman/lib/libnmesched.a  /oracle/app/newoh/dbhome_1/sysman/lib/libnmectl.a  /oracle/app/newoh/dbhome_1/sysman/lib/libnmejc.a  /oracle/app/newoh/dbhome_1/sys
man/lib/libnmej.a -L/oracle/app/oracle/product/11.2.0.3/dbhome_1/jdk/jre/lib/IA64W/hotspot -L/oracle/app/oracle/product/11.2.0.3/dbhome_1/jdk/jre/lib/IA64W -ljava -ljvm -lverify  /oracle/app/newoh/dbh
ome_1/sysman/lib/libnmeclumgr.a /oracle/app/newoh/dbhome_1/sysman/lib/libnmecluster.a  /oracle/app/newoh/dbhome_1/sysman/lib/libnmexml.a  -lclntsh -lxml11 -lcore11 -lnls11   -lnls11 -lcore11 -lunls11
 -lnnz11 -lncrypt11 -ln11  -lpthread -lnsl -lm     `cat /oracle/app/newoh/dbhome_1/lib/sysliblist`  -lm  -lpthread -lrt
        mv -f /oracle/app/newoh/dbhome_1/lib/libnmemso.so /oracle/app/newoh/dbhome_1/lib/libnmemso.so.0
        mv  /oracle/app/newoh/dbhome_1/sysman/lib/libnmemso.so /oracle/app/newoh/dbhome_1/lib/libnmemso.so
        /usr/ccs/bin/make -f /oracle/app/newoh/dbhome_1/sysman/lib/ins_emagent.mk relink_sharedobj SHAREDOBJ=libnmeoci
        /oracle/app/newoh/dbhome_1/bin/linkshlib /oracle/app/newoh/dbhome_1/sysman/lib/libnmeoci.so /oracle/app/newoh/dbhome_1/sysman/lib/ins_emagent.mk so new_ld_shlib
+ PATH=/bin:/usr/bin:/usr/ccs/bin
+ export PATH
+ lib=/oracle/app/newoh/dbhome_1/sysman/lib/libnmeoci.so
+ makefile=/oracle/app/newoh/dbhome_1/sysman/lib/ins_emagent.mk
+ so_ext=so
+ target=new_ld_shlib
+ var=
+ + basename /oracle/app/newoh/dbhome_1/sysman/lib/libnmeoci.so .so
libname=libnmeoci
+ + dirname /oracle/app/newoh/dbhome_1/sysman/lib/libnmeoci.so
dir=/oracle/app/newoh/dbhome_1/sysman/lib
+ [ var = new_ld_shlib ]
+ [ -f /oracle/app/newoh/dbhome_1/sysman/lib/libnmeoci.a ]
+ dir2=/oracle/app/newoh/dbhome_1/sysman/lib/
+ [  !=  ]
+ make -f /oracle/app/newoh/dbhome_1/sysman/lib/ins_emagent.mk new_ld_shlib _FULL_LIBNAME=/oracle/app/newoh/dbhome_1/sysman/lib/libnmeoci.so _LIBNAME=libnmeoci _LIBDIR=/oracle/app/newoh/dbhome_1/sysma
n/lib/ _LIBNAME_LIBS=$(libnmeociLIBS) _LIBNAME_EXTRALIBS=$(libnmeociEXTRALIBS)
        /usr/ccs/bin/ld -o /oracle/app/newoh/dbhome_1/sysman/lib/libnmeoci.so +s  -b -L/tmp/bootstraplib/ -L/oracle/app/newoh/dbhome_1/lib/ -L/oracle/app/newoh/dbhome_1/sysman/lib/  -c /oracle/app/new
oh/dbhome_1/sysman/lib/libnmeoci.def +h libnmeoci.so +forceload /oracle/app/newoh/dbhome_1/sysman/lib/libnmeoci.a +noforceload  +b /oracle/app/newoh/dbhome_1/lib/:/oracle/app/newoh/dbhome_1/sysman/lib
/ -lnmemso -lclntsh -L/oracle/app/oracle/product/11.2.0.3/dbhome_1/jdk/jre/lib/IA64W/hotspot -L/oracle/app/oracle/product/11.2.0.3/dbhome_1/jdk/jre/lib/IA64W -ljava -ljvm -lverify  +k
        mv -f /oracle/app/newoh/dbhome_1/lib/libnmeoci.so /oracle/app/newoh/dbhome_1/lib/libnmeoci.so.0
        mv  /oracle/app/newoh/dbhome_1/sysman/lib/libnmeoci.so /oracle/app/newoh/dbhome_1/lib/libnmeoci.so
        /usr/ccs/bin/make -f /oracle/app/newoh/dbhome_1/sysman/lib/ins_emagent.mk relink_sharedobj SHAREDOBJ=libnmefw
        /oracle/app/newoh/dbhome_1/bin/linkshlib /oracle/app/newoh/dbhome_1/sysman/lib/libnmefw.so /oracle/app/newoh/dbhome_1/sysman/lib/ins_emagent.mk so new_ld_shlib
+ PATH=/bin:/usr/bin:/usr/ccs/bin
+ export PATH
+ lib=/oracle/app/newoh/dbhome_1/sysman/lib/libnmefw.so
+ makefile=/oracle/app/newoh/dbhome_1/sysman/lib/ins_emagent.mk
+ so_ext=so
+ target=new_ld_shlib

Summary:
一般我们可以使用opatch lsinventory 查看数据库版本已补丁, 但是如果在安装补丁中出错一不要轻易忽略,这个案例就是很难发现,如果不是修改参数发现不存在通常不晚发现,数据库目前没发现明显的性能问题, 但是毕竟节点1修复的bug节点2依然存在,且有不稳定的风险, 解决方法:把节点2 的patch rollback掉,再重新安装一次。

「喜欢文章,快来给作者赞赏墨值吧」

评论

0
0
Oracle
订阅
欢迎订阅Oracle频道,订阅之后可以获取最新资讯和更新通知。
墨值排行
今日本周综合
近期活动
全部
相关课程
全部