隨筆 - 3  文章 - 1  trackbacks - 0
          <2010年12月>
          2829301234
          567891011
          12131415161718
          19202122232425
          2627282930311
          2345678

          常用鏈接

          留言簿

          隨筆檔案

          文章分類

          收藏夾

          搜索

          •  

          最新評論

          閱讀排行榜

          評論排行榜

          Oracle10g Bug 4612267 補丁安裝備忘錄


          當(dāng)時,執(zhí)行uptime,發(fā)現(xiàn)系統(tǒng)已經(jīng)運行了250天,而且正好是周一,郁悶死了(周末2天系統(tǒng)沒人用)。

          一、bug癥狀和描述

          癥狀:
          當(dāng)主機運行時間達(dá)198天或248天,cpu占用率就突然達(dá)到100%。此時操作系統(tǒng)命令可以執(zhí)行,但Oracle的命令象lsnrctl、sqlplus、dbca等都會被hang住,不能執(zhí)行。

          Oracle官方對該bug的描述:
          #-------------------------------------------------------------------------
          # Interim Patch for Base Bugs: 4612267
          #-------------------------------------------------------------------------
          #
          # DATE: Wed Oct 5 10:17:13 2005
          # -------------------------------
          # Platform Patch for : Linux x86
          # Product Version # : 10.2.0.1
          # Product Patched    : ORACORE
          #
          # Bugs Fixed by this patch:
          # -------------------------
          # 4612267:OCI CLIENT IS IN AN INFINITE LOOP WHEN MACHINE UPTIME HITS 248 DAYS
          #-------------------------------------------------------------------------

          備注:
          事實上只要Linux x86主機運行天數(shù)是是24.8的倍數(shù)都有可能引發(fā)該bug,因為time()函數(shù)值為null,造成無限死循環(huán),從而耗盡cpu。

          解決辦法三種:
          1) 重啟主機;
          2) 打patch set,如升級到10.2.0.4;
          3) 對該bug單獨打臨時patch 4612267。
          第一種方法沒有徹底解決問題,以后照舊;第二種方法,升級時間長,且要求停庫很久,當(dāng)前生產(chǎn)環(huán)境暫不適合;本文采用第三種方法。

          參考文檔:
          Doc ID: 338461.1 SQL*Plus 10.2.0.1 Hangs, When System Uptime Is Long Period of Time
          Doc ID: 4612267.8 Bug 4612267 - OCI client spins when machine uptime >= 249 days

          二、先停監(jiān)聽、dbconsole和數(shù)據(jù)庫


          $ lsnrctl stop
          $ emctl stop dbconsole
          $ sqlplus / as sysdba
          SQL> shutdown immediate

          注意:dbconsole是在已經(jīng)裝了Oracle EM的情況下要停止,如果未安裝則無需干涉。

          三、安裝patch

          $ mkdir $ORACLE_BASE/patches
          $ cd $ORACLE_BASE/patches
          $ rz    (SecureCRT里上傳 p4612267_10201_LINUX.zip 文件, 其它上傳方式也可以)
          $ unzip p4612267_10201_LINUX.zip  
          $ cd 4612267/
          $ $ORACLE_HOME/OPatch/opatch apply
          Invoking OPatch 10.2.0.1.0
          ...
          Please shutdown Oracle instances running out of this ORACLE_HOME on the local system.
          (Oracle Home = '/u01/app/oracle/product/10.2.0/db_1')

          Is the local system ready for patching?

          Do you want to proceed? [y|n]
          y    (此處輸入y)
          User Responded with: Y
          ...
          ApplySession adding interim patch '4612267' to inventory

          The local system has been patched and can be restarted.

          OPatch succeeded.

          四、驗證patch

          $ $ORACLE_HOME/OPatch/opatch lsinventory
          Invoking OPatch 10.2.0.1.0

          Oracle interim Patch Installer version 10.2.0.1.0
          Copyright (c) 2005, Oracle Corporation. All rights reserved..


          Oracle Home       : /u01/app/oracle/product/10.2.0/db_1
          Central Inventory : /u01/app/oracle/oraInventory
             from           : /u01/app/oracle/product/10.2.0/db_1/oraInst.loc
          OPatch version    : 10.2.0.1.0
          OUI version       : 10.2.0.1.0
          OUI location      : /u01/app/oracle/product/10.2.0/db_1/oui
          Log file location : /u01/app/oracle/product/10.2.0/db_1/cfgtoollogs/opatch/opatch-2009_Jan_13_11-06-27-HKT_Tue.log

          Lsinventory Output file location : /u01/app/oracle/product/10.2.0/db_1/cfgtoollogs/opatch/lsinv/lsinventory-2009_Jan_13_11-06-27-HKT_Tue.txt

          --------------------------------------------------------------------------------
          Installed Top-level Products (2):

          Oracle Database 10g                                                  10.2.0.1.0
          Oracle Database 10g Products                                         10.2.0.1.0
          There are 2 products installed in this Oracle Home.


          Interim patches (1) :

          Patch 4612267      : applied on Tue Jan 13 11:05:10 HKT 2009
             Created on 5 Oct 2005, 13:48:00 hrs US/Pacific
             Bugs fixed:
               4612267


          --------------------------------------------------------------------------------

          OPatch succeeded.

          五、啟動數(shù)據(jù)庫、監(jiān)聽和dbconsole

          $ sqlplus / as sysdba
          SQL> startup
          $ lsnrctl start
          $ emctl start dbconsole

          六、如果有需要,還可以刪除patch,刪除前先停庫

          $ cd $ORACLE_BASE/patches/4612267
          $ $ORACLE_HOME/OPatch/opatch rollback -id 4612267
          Invoking OPatch 10.2.0.1.0
          ...
          Please shutdown Oracle instances running out of this ORACLE_HOME on the local system.
          (Oracle Home = '/u01/app/oracle/product/10.2.0/db_1')

          Is the local system ready for patching?

          Do you want to proceed? [y|n]
          y    (此處輸入y)
          User Responded with: Y
          ...
          RollbackSession removing interim patch '4612267' from inventory

          The local system has been patched and can be restarted.

          OPatch succeeded.

          此時再執(zhí)行上面的驗證patch命令就會發(fā)現(xiàn)該patch已經(jīng)刪除了。

          --End--

          posted on 2010-12-06 21:43 車塵馬足顯者事,酒盞花枝隱士緣 閱讀(226) 評論(0)  編輯  收藏

          只有注冊用戶登錄后才能發(fā)表評論。


          網(wǎng)站導(dǎo)航:
           
          主站蜘蛛池模板: 监利县| 铜陵市| 荥阳市| 克拉玛依市| 获嘉县| 个旧市| 文水县| 华安县| 图木舒克市| 高密市| 钟山县| 海丰县| 蓬溪县| 石屏县| 师宗县| 桑日县| 梅州市| 绥滨县| 垦利县| 宜丰县| 黄冈市| 凤阳县| 永定县| 吐鲁番市| 城口县| 安义县| 集安市| 大方县| 扎兰屯市| 西昌市| 黄浦区| 晋宁县| 印江| 瑞昌市| 灵山县| 道孚县| 扶风县| 哈密市| 武强县| 阿鲁科尔沁旗| 德格县|