經歷Oracle patch 5496862補丁
資料庫平臺硬體架構如下:
生產機:IBMp6 570安裝AIX5L ML 5308 。
資料庫平臺:Oracle Server - Enterprise Edition - Version: 9.2.0.8
生產機:兩臺IBMp6 570 OS均為 5300-08-01-0189
應用系統:OA
ORA-01110: data file 6 : ‘/oradata/smis1.dbf’
ORA-27091: skgfqio :unable to quere I/O
ORA-27072: skgfdisp : I/O error
IBM AIX RISC System/6000 Error : 5: I/O error
上傳檔案p2617419_10102_GENERIC.zip(當然,上傳之前肯定要下載,自己搜尋吧,實在找不到,可以聯絡我)
解壓到oracle目錄下:
aix下解壓到$ORACLE_HOME/OPatch下
windows下解壓到oracle/ora92/OPatch
可以看到在OPatch下有兩個opact檔案,其中一個是.bat的,在windows下用。另一個是在aix下用的。
解壓後如果忙著執行是不會有結果返回的。應該先配置環境變數。下面是操作步驟。解壓就不說了。
1). 把$ORACLE_HOME/OPatch,如果$ORACLE_HOME不可用的話就把絕對路徑放在前面。
$ cd home/oracle
---根目錄下的.profile最好不要修改。儘管它也沒有修改的許可權。
$ vi .profile
".profile" 32 lines, 890 characters
PATH=/usr/bin:/etc:/usr/sbin:/usr/ucb:$HOME/bin:/usr/bin/X11:/sbin:$ORACLE_HOME/OPatch:/usr/java14/bin:.
export PATH
if [ -s "$MAIL" ] # This is at Shell startup. In normal
then echo "$MAILMSG" # operation, the Shell checks
fi # periodically.
ORACLE_HOME=/oracle/product/9.2.0
export ORACLE_HOME
ORACLE_BASE=/oracle
export ORACLE_BASE
ORACLE_SID=hydk
export ORACLE_SID
#ORACLE_TERM=vt100
#export ORACLE_TERM
PATH=$PATH:$HOME/bin:$ORACLE_HOME/bin
export PATH
JAVA_HOME=/usr/java14
export JAVA_HOME
CLASSPATH=/oracle/product/9.2.0/jdbc/lib/classes12.zip:/oracle/product/9.2.0/jdbc/lib/nls_charset12.zip
export CLASSPATH
NLS_LANG=AMERICAN_AMERICA.ZHS16GBK
export NLS_LANG
TMPDIR=/tmp
export TMPDIR
LIBPATH=$ORACLE_HOME/lib32:$JAVA_HOME/lib:$ORACLE_HOME/lib
export LIBPATH
#export DBCA_RAW_CONFIG=/oracle/admin/hydk/scripts/hydk_raw.cnf
umask 022
~
~
:q!
說明
PATH=/usr/bin:/etc:/usr/sbin:/usr/ucb:$HOME/bin:/usr/bin/X11:/sbin:$ORACLE_HOME/OPatch:/usr/java14/bin:.
可以修改成
PATH=/usr/bin:/etc:/usr/sbin:/usr/ucb:$HOME/bin:/usr/bin/X11:/sbin:/oracle/product/9.2.0/OPatch:/usr/java14/bin:.
2). 修改許可權
# ls -al
total 128
drwxr-x--- 5 oracle dba 256 Dec 03 14:00 .
drwxr-xr-x 58 oracle dba 4096 Dec 03 14:00 ..
-rw-r----- 1 oracle dba 2446 Dec 03 14:00 README.txt
drwxr-x--- 2 oracle dba 256 Dec 03 14:00 docs
-rw-r----- 1 oracle dba 17965 Dec 03 14:00 emdpatch.pl
drwxr-x--- 2 oracle dba 256 Dec 03 14:00 jlib
-rw-r----- 1 oracle dba 6143 Dec 03 14:00 opatch
-rw-r----- 1 oracle dba 5269 Dec 03 14:00 opatch.bat
-rw-r----- 1 oracle dba 13703 Dec 03 14:00 opatch.pl
drwxr-x--- 2 oracle dba 4096 Dec 03 14:00 perl_modules
# su root
# whoami
root
# su oracle
$ whoami
oracle
$ cd $ORACLE_HOME/OPatch
$
$ opatch lsinventory -all -detail
ksh: opatch: 0403-006 Execute permission denied.
$ chmod 770 opatch
$ ls -al
total 128
drwxr-x--- 5 oracle dba 256 Dec 03 14:00 .
drwxr-xr-x 58 oracle dba 4096 Dec 03 14:00 ..
-rw-r----- 1 oracle dba 2446 Dec 03 14:00 README.txt
drwxr-x--- 2 oracle dba 256 Dec 03 14:00 docs
-rw-r----- 1 oracle dba 17965 Dec 03 14:00 emdpatch.pl
drwxr-x--- 2 oracle dba 256 Dec 03 14:00 jlib
-rwxrwx--- 1 oracle dba 6143 Dec 03 14:00 opatch
-rw-r----- 1 oracle dba 5269 Dec 03 14:00 opatch.bat
-rw-r----- 1 oracle dba 13703 Dec 03 14:00 opatch.pl
drwxr-x--- 2 oracle dba 4096 Dec 03 14:00 perl_modules
3). 執行。
$ cd $ORACLE_HOME/OPatch
$ opatch lsinventory -all -detail
Oracle Interim Patch Installer version 1.0.0.0.53
Copyright (c) 2005 Oracle Corporation. All Rights Reserved..
We recommend you refer to the OPatch documentation under
OPatch/docs for usage reference. We also recommend using
the latest OPatch version. For the latest OPatch version
and other support related issues, please refer to document
293369.1 which is viewable from metalink.oracle.com
Oracle Home = /oracle/product/9.2.0
Location of Oracle Universal Installer components = /oracle/product/9.2.0/oracle.swd.oui
Location of OraInstaller.jar = "/oracle/product/9.2.0/oracle.swd.oui/lib"
Oracle Universal Installer shared library = /oracle/product/9.2.0/oracle.swd.oui/bin/aix/liboraInstaller.so
Location of Oracle Inventory Pointer = /etc/oraInst.loc
Location of Oracle Inventory = /oracle
Path to Java = /oracle/product/9.2.0/jdk/jre/bin/java
Log file = /oracle/product/9.2.0/.patch_storage/
Creating log file "/oracle/product/9.2.0/.patch_storage/LsInventory__12-04-2008_15-23-43.log"
ORACLE HOME LOCATION
----------- --------
OUIHome /oracle/product/9.2.0
There is no Interim Patch
OPatch succeeded.
到此,Opatch安裝完成。
5、補丁安裝
1)從SAP Service網站下載Oracle Enterprise Edition Version: 9.2.0.8的補丁包5496862。說實在這上檔案真的不好找,沒有Oracle網站的Metalink帳號,是下載不下來的,發動群眾的力量幫你下載吧!!)
2)將補丁包p5496862_92080_AIX64-5L.zip的解壓後上傳到資料庫主機的/oracle/patch目錄
3)載入patch
詳細步驟如下:
以oracle資料庫使用者執行下面的命令:
$su - oraprd
$cd /oracle/patch
$cd 5496862
$ORACLE_HOME/Opatch/opatch install
開始安裝,接著提示
Please shut down Oracle instances running out of this ORACLE_HOME
(Oracle Home = /oracle/PRD/920_64)
Is this system ready for updating?
Please respond Y|N > ”輸入’Y’
此時oracle會開始安裝patch,因為要重新連結lib,所以要花幾分鐘時間,在安裝完畢後會出現“OPatch succeeded”提示。
4)測試
5)如測試有問題解除安裝該patch
$ORACLE_HOME/Opatch/opatch rollback -id 5496862
6、原檔案
(好像找不到可以上傳的地方...................)
從論壇中發現另一種解決辦法:
故障現象
執行SELECT tablespace_name 表空間,sum(blocks*8192/1000000) 剩餘空間M FROM dba_free_space GROUP BY tablespace_name;
報如下錯誤
ORA-01116: error in opening database file 47
ORA-01110: data file 47: '/dev/rpt_itrusca_disk'
ORA-27041: unable to open file
IBM AIX RISC System/6000 Error: 13: Permission denied
Additional information: 3
故障分析
根據Permission denied懷疑是許可權問題,如下查詢得知果然許可權crw-rw----和其他空間不一樣
p550a:/dev#ls -lt|grep rpt_
crw-rw---- 1 root system 80,100 8月09 17時39 rpt_itrusca_disk
crwxrwxrwx 1 oracle dba 80,102 6月25 13時08 rpt_gaza_disk
crwxrwxrwx 1 oracle dba 80,101 6月25 13時08 rpt_silkroad
crwxrwxrwx 1 root system 80, 98 6月25 13時08 rpt_website_disk
crwxrwxrwx 1 oracle dba 80,103 6月25 13時08 rpt_zjport1_disk
crwxrwxrwx 1 oracle dba 80,104 6月25 13時08 rpt_zjport2_disk
crwxrwxrwx 1 oracle dba 80,105 6月25 13時08 rpt_zjport3_disk
crwxrwxrwx 1 oracle dba 80,106 6月25 13時08 rpt_zjport4_disk
crwxrwxrwx 1 oracle dba 80,107 6月25 13時08 rpt_zjport5_disk
crwxrwxrwx 1 oracle dba 80,108 6月25 13時08 rpt_zjport6_disk
crwxrwxrwx 1 oracle dba 80,109 6月25 13時08 rpt_zjport7_disk
crwxrwxrwx 1 oracle dba 80,110 6月25 13時08 rpt_zjport8_disk
crw-rw---- 1 oracle dba 80, 99 6月25 13時08 rpt_zjport_index
crwxrwxrwx 1 root system 80, 97 4月30 17時38 rpt_users_disk
解決
chmod 後故障消失
p550a:/dev#chmod 777 rpt_itrusca_disk
後續規範解決:chown oracle:dba rpt_itrusca_disk
作者及原文:
沒有測試過,不知道是不是真的可以解決!有待查證。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/14663377/viewspace-1058393/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- AIX 5.3 TL05版本以上資料庫補丁Patch 5496862AI資料庫
- oracle patch補丁型別typeOracle型別
- Oracle補丁集的補丁號Patch ID/Number速查Oracle
- Oracle Database常用補丁集Patch號OracleDatabase
- ORACLE 11g 升級補丁(Patch)Oracle
- 給oracle打Patch 9352237補丁Oracle
- Oracle PSU (Patch Set Update)- 10g補丁列表及如何檢視補丁Oracle
- 【PATCH】Oracle12c升級補丁初體驗Oracle
- zt_使用opatch給oracle打補丁patch_bugOracle
- Oracle Database常用補丁集Patch號及各版本PSUOracleDatabase
- 【Patch】oracle 補丁與下載目錄對應關係Oracle
- 打補丁報錯 File in patch is not a known Oracle Applications fileOracleAPP
- 活用 git apply 合入 patch 補丁GitAPP
- 打Oracle最新CPU patch與打臨時補丁的區別Oracle
- oracle cpu(critical patch update)關鍵補丁更新集_官方網址Oracle
- oracle 補丁Oracle
- Oracle的補丁Oracle
- Git 打補丁– patch 和 diff 的使用(詳細)Git
- Git 打補丁-- patch 和 diff 的使用(詳細)Git
- 關於Oracle Database PSU/SPU/Bundle Patch的補丁號的變化OracleDatabase
- 【補丁】Oracle補丁的知識及術語Oracle
- oracle 補丁種類和升級方法以及oracle RAC Rolling Patch 說明Oracle
- Oracle RAC 第二節點打補丁報錯 oui-patch.xml (Permission denied)OracleUIXML
- 關於 Oracle 資料庫 PSU/SPU/Bundle Patch的補丁號變化Oracle資料庫
- 補丁集PSU、Bundle Patch大致安裝步驟
- Oracle RAC更新補丁Oracle
- Oracle 安裝補丁Oracle
- 12. Oracle版本、補丁及升級——12.2. 補丁及補丁集Oracle
- Oracle補丁術語介紹 PSU CPU補丁Oracle
- 一次向linux開源社群提交補丁的經歷Linux
- 如何製作patch檔案及如何打patch 附帶linux打補丁命令Linux
- zt_oracle psu_cpu_bundle補丁patch升級upgrade相關概念Oracle
- 差異檔案(diff)和補丁檔案(patch)簡介
- Oracle補丁介紹一Oracle
- oracle最新補丁查詢Oracle
- oracle打補丁回顧Oracle
- Oracle的OPatch補丁更新Oracle
- Oracle補丁集查詢Oracle