Oracle 單機資料庫打Patch

2022/01/10閱讀時間約 5 分鐘
本文以12.1的oracle單機資料庫為例,更新每季出的PSU

【目前環境】

檢查目前patch為12.1.0.2.210420 PSU 與 OJVM。
$ORACLE_HOME/OPatch/opatch lspatches
lspatches
紀錄目前sqlpatch狀態,可以看出201710與202104有更新過PSU。
##12c
SET LINESIZE 400
COLUMN action_time FORMAT A20
COLUMN action FORMAT A10
COLUMN status FORMAT A12
COLUMN description FORMAT A80
COLUMN version FORMAT A10
COLUMN bundle_series FORMAT A10
SELECT TO_CHAR(action_time, 'YYYY-MM-DD') AS action_time, 
action, 
status, 
description, 
version, 
patch_id, 
bundle_series 
FROM sys.dba_registry_sqlpatch 
ORDER by action_time;
DBA_REGISTRY_SQLPATCH
註:
從12.1.0.1 開始就以DBA_REGISTRY_SQLPATCH 來查詢PSU與BP,取代以前的DBA_REGISTRY_HISTORY

目標補丁

  • DB PSU :  (32768233)
  • OJVM : (32876425)
DB PSU & OJVM

【檢查OPatch】

opatch version
目前OPatch版本為12.2.0.1.24,根據此PSU的Readme,需要更新到12.2.0.1.25以上的版本,可以透過6880880下載最新版本的OPatch。
download latest released OPatch
置換OPatch
[oracle@dbz source]$ mv $ORACLE_HOME/OPatch $ORACLE_HOME/OPatchbk
[oracle@dbz source]$ unzip p6880880_122010_Linux-x86-64.zip -d $ORACLE_HOME/
置換後OPatch 版本為12.2.0.1.28
opatch version

【事前作業】

解壓縮patch
[oracle@dbz source]$ unzip p32768233_121020_Linux-x86-64.zip
[oracle@dbz source]$ unzip p32876425_121020_Linux-x86-64.zip
[oracle@dbz source]$ ls -l
drwxr-xr-x 30 oracle oinstall       4096 Jul 14 12:27 32768233
drwxr-xr-x  4 oracle oinstall       4096 Jul  6  2021 32876425
-rw-rw-r--  1 opc    opc      3970703826 Jan  5 14:10 p32768233_121020_Linux-x86-64.zip
-rw-rw-r--  1 opc    opc       141249367 Jan  5 14:11 p32876425_121020_Linux-x86-64.zip
Run OPatch Conflict Check.
opatch prereq CheckConflictAgainstOHWithDetail -phBaseDir /u01/source/32768233
check conflict
Run OPatch SystemSpace Check
opatch prereq CheckSystemSpace -phBaseDir /u01/source/32768233
CheckSystemSpace

【更新補丁】

SQL> shutdown immediate;
$> lsnrctl stop
cd /u01/source/32768233
$ORACLE_HOME/OPatch/opatch apply
apply PSU
apply OJVM
檢查更新結果
lspatches

【事後作業】

$ > sqlplus / as sysdba
SQL> startup
SQL> quit
cd $ORACLE_HOME/OPatch
./datapatch -verbose
datapatch
sqlpatch

工程師Kxodia的技術報告
工程師Kxodia的技術報告
我是肯佐迪亞,畢業於交通大學【理學碩士】,一直從事資訊科技相關領域,目前擔任Oracle原廠工程師,主要分享一些技術應用與實務經驗,若有任何問題歡迎與我聯繫 https://kxodia.com
留言0
查看全部
發表第一個留言支持創作者!