ORACLE打補丁的方法和案例
打補丁使用opatch工具,具體操作方法以補丁包中的readme.txt為準
1. 檢視某個補丁是否安裝的方法(下面命令不行就升級opatch)
$ORACLE_HOME/OPatch/opatch lsinventory
2. 下載補丁包
檢視當前opatch版本。Oracle 11.2.0.1.0 自帶的opatch版本是11.1.0.6.6。補丁包的README.html中有描述該補丁或PSU需要的最低版本opatch,如果當前opatch版本過低($ORACLE_HOME/OPatch/opatch version命令可以檢視),則需要升級。
3. opatch版本升級
下載 Patch 6880880檔案(如p6880880_112000_Linux-x86-64表示64位版本linux下的),mv原來的$ORACLE_HOME/OPatch目錄,解壓Patch 6880880檔案自動生成$ORACLE_HOME/OPatch目錄即可。
4. 驗證opatch是否升級成功
$ORACLE_HOME/OPatch/opatch version
5. 關閉DB和監聽
6. 進入補丁包的目錄
7. 打補丁(Oracle軟體部分)
打補丁的命令通常是簡單的opatch apply。
$ORACLE_HOME/OPatch/opatch apply
8. 打補丁(資料庫部分,PSU補丁集升級需要執行,只升級特定的某一個補丁一般不需要執行)
SQL>STARTUP migrate
SQL>@$ORACLE_HOME/rdbms/admin/catbundle.sql psu apply
sql>shutdown
immediate
sql>startup
9. 重新編譯CPU相關檢視 (可忽略此步驟)
該步驟在一個資料庫上永遠只需要執行一次,是為了完成在2008年1月份第一次釋出CPU補丁時的後續工作,如果在安裝以前的PSU或者CPU時執行過這個步驟那麼就可以無需再次執行,另外,即使不執行該步驟,資料庫也是正常執行的,只不過意味著2008年1月份的 CPU補丁沒有正常結束安裝。
cd $ORACLE_HOME/cpu/view_recompile
sqlplus / as sysdba
SQL>@recompile_precheck_jan2008cpu.sql
SQL>SHUTDOWN IMMEDIATE
SQL>STARTUP UPGRADE
SQL>@view_recompile_jan2008cpu.sql
SQL>SHUTDOWN;
SQL>STARTUP;
SQL>exit
10.編譯無效物件
SQL>@$ORACLE_HOME/rdbms/admin/utlrp.sql
11.檢視admin/*/bdump下面是否有類似檔案centdb_mmon_9603.trc一直在寫,如果有的話再重啟下DB。
12.解除安裝補丁
opatch
rollback -id 補丁號如9264253
如果打某個補丁1618213,但是沒有找到單個的補丁包,找到了多個PSU,如在MOS上找到兩個這樣的包Database 11.2.0.1 PSU Patch 18139690、Database 11.2.0.1.2 PSU Patch 18031668,我們只打後一個就可以了,因為PSU是從小到大相互包含的累計補丁包
個人升級的一次實驗:升級一個特定的補丁8574851,readme.txt沒有說明說要升級資料字典,只需要opatch apply即可,個人特意去執行SQL>@catbundle.sql psu apply還報錯了
單機與RAC打補丁8574851的區別
(a) In a non-RAC environment:
Shut down all services that are running from this ORACLE_HOME.
Confirm the return status from each shutdown command to verify
the shutdown is successful and there are no errors.
(b) In a RAC environment:
For each node in the RAC system, shut down the services for
the specific machine that are running from the ORACLE_HOME.
OPatch will be used on each node in the RAC system one at
a time. If this patch is not rolling RAC installable treat
it as a non-RAC environment and shut down all services.
As an example, in the case of a two node RAC system:
1. Stop instances running on node 1.
2. Run 'opatch apply /8574851' on node 1.
3. When the apply finishes, opatch asks for confirmation
before going on to apply the patch to node 2.
4. Start instances on node 1.
5. Stop instances running on node 2.
6. Ask opatch to continue to applying the patch to node 2.
7. Start instances on node 2.
RAC打補丁8574851的一次實驗
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/30126024/viewspace-2122207/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Oracle資料庫打補丁方法Oracle資料庫
- oracle打補丁回顧Oracle
- Oracle EBS中打補丁Oracle
- 批處理打補丁的方法
- 使用OPatch給Oracle打補丁Oracle
- 在windows上打Oracle的CPU補丁WindowsOracle
- ORACLE11G DG打補丁Oracle
- oracle 小補丁能全部打嗎?Oracle
- 安裝oraInventory和使用opatch給Oracle打補丁AIOracle
- oracle 版本修復的bug列表和打補丁注意事項Oracle
- 【opatch】Oracle打補丁工具opatch簡介Oracle
- 給Oracle資料庫打補丁(轉)Oracle資料庫
- 打Oracle最新CPU patch與打臨時補丁的區別Oracle
- 【UP_ORACLE】如何給Oracle DG打補丁(二)備庫安裝補丁步驟Oracle
- 【UP_ORACLE】如何給Oracle DG打補丁(三)主庫安裝補丁步驟Oracle
- Oracle RAC 19.3打19.5.1 RU補丁Oracle
- Oracle Goldengate 12c打pus補丁OracleGo
- Git 打補丁– patch 和 diff 的使用(詳細)Git
- Git 打補丁-- patch 和 diff 的使用(詳細)Git
- 10.2.0.2打某補丁失敗的解決方法
- Oracle的補丁Oracle
- 資料庫的升級和打補丁的研究資料庫
- weblogic的版本及打補丁Web
- Oracle EBS APP & DB 打補丁過程簡述OracleAPP
- 給oracle打Patch 9352237補丁Oracle
- 聊聊兩種給Grid Infrastructure打補丁的方法(上)ASTStruct
- 聊聊兩種給Grid Infrastructure打補丁的方法(下)ASTStruct
- oracle 補丁Oracle
- ORACLE RAC的全自動 打補丁標準化文件Oracle
- 【補丁】Oracle補丁的知識及術語Oracle
- Linux檔案打補丁Linux
- SAP打補丁(Tcode:SPAM)
- windows oracle 11201打補丁報錯WindowsOracle
- oracle 19c rac打補丁常見錯誤Oracle
- oracle12c之 單機12.1.0.1打補丁Oracle
- 安裝oracle 11g RAC時打8670579?補丁Oracle
- Oracle打補丁時無法正確顯示英文Oracle
- zt_使用opatch給oracle打補丁patch_bugOracle