반응형

■ [2024-11-17][OL7.9] 19c 2 Node RAC RU Patch 작업 (19.24 -> 19.25)


<테스트 개요>

 

사전 준비: OPatch 최신 버전(12.2.0.1.44) 및 19c RU 패치(19.25) 파일을 다운로드/업로드 후 각 노드(Grid, Oracle Home)에 OPatch 교체.

패치 적용: rootcrs.sh -prepatch 실행 → Grid Home과 Oracle Home 각각 충돌/용량 체크 후 순차적으로 RU 패치 적용 및 sqlpatch/datapatch 수행.

검증 및 마무리: CRS 재기동 확인, chad 리소스 재기동, DBA_REGISTRY_SQLPATCH 및 crsctl query로 패치 정상 반영 여부 검증.

 

 

1. Opatch download

 

https://updates.oracle.com/download/6880880.html 로 접속

OPatch 12.2.0.1.44 for DB 19.0.0.0.0 (Oct 2024)

Select a Release : OPatch for DB 19.0.0.0.0

Platform or Language : Linux x86-64

Download 버튼

p6880880_190000_Linux-x86-64.zip 파일을 다운로드

 

 

2. 19c RU 최신 패치 다운로드 (여기서는 19.25로 테스트)

 

Assistant: Download Reference for Oracle Database/GI Update, Revision, PSU, SPU(CPU), Bundle Patches, Patchsets and Base Releases (Doc ID 2118136.2)

 

Oracle Database Release Updates (RUs) 선택

19.0.0.0 선택

JAN2022 (12.2.0.1.220118) : GI Update 36916690 선택

Linux x86-64 선택

p36916690_190000_Linux-x86-64.zip 파일을 다운로드 하게됨

 

3. 패치 파일 업로드

 

[root@trdb1][/root]$ mkdir -pv /tmp/patch

[root@trdb2][/root]$ mkdir -pv /tmp/patch

--> 해당 위치에 모든 패치 파일을 업로드 시킴

 

3-1. 1번 노드 업로드 확인

 

[root@trdb1][/tmp/patch]$ ls -al
-rw-r--r--.  1 root root 3369893688 Nov 17 15:17 p36916690_190000_Linux-x86-64.zip
drwxrwxrwx.  3 root root       4096 Nov 17 15:17 .
-rw-r--r--.  1 root root  134583311 Nov 17 15:17 p6880880_190000_Linux-x86-64.zip

 

[root@trdb1][/root]$ chmod -R 777 /tmp/patch

 

3-2. 2번 노드 업로드 확인

 

[root@trdb2][/tmp/patch]$ ls -al
-rw-r--r--.  1 root root 3369893688 Nov 17 15:17 p36916690_190000_Linux-x86-64.zip
drwxrwxrwx.  3 root root       4096 Nov 17 15:17 .
-rw-r--r--.  1 root root  134583311 Nov 17 15:17 p6880880_190000_Linux-x86-64.zip


[root@trdb2][/tmp/patch]$ chmod -R 777 /tmp/patch

 

4. Opatch 설치

 

4-1. 1번 노드 Opatch 설치

 

-->  grid Opatch 백업

[root@trdb1][/tmp/patch]$ cd $GRID_HOME
[root@trdb1][/u01/app/19c/grid]$ mv OPatch OPatch.bak_2

 

[root@trdb1][/u01/app/19c/grid]$ unzip /tmp/patch/p6880880_190000_Linux-x86-64.zip -d $GRID_HOME

[root@trdb1][/u01/app/19c/grid]$ chown grid:oinstall -R $GRID_HOME/OPatch


[+ASM1:grid@trdb1][/home/grid]$ which opatch
/u01/app/19c/grid/OPatch/opatch

[+ASM1:grid@trdb1][/home/grid]$ opatch version
OPatch Version: 12.2.0.1.44

OPatch succeeded.

 

-->  oracle Opatch 백업

 

[root@trdb1][/root]$ cd $DB_HOME
[root@trdb1][/u01/app/oracle/product/19c/db_1]$ mv OPatch OPatch.bak_2


[root@trdb1][/u01/app/oracle/product/19c/db_1]$ unzip /tmp/patch/p6880880_190000_Linux-x86-64.zip -d $DB_HOME

[root@trdb1][/u01/app/oracle/product/19c/db_1]$ chown oracle:oinstall -R $DB_HOME/OPatch

 

[PRDB1:oracle@trdb1][/home/oracle]$ which opatch
/u01/app/oracle/product/19c/db_1/OPatch/opatch
[PRDB1:oracle@trdb1][/home/oracle]$ opatch version
OPatch Version: 12.2.0.1.44

OPatch succeeded.


4-2. trdb2 Node

 

-->  grid Opatch 백업

[root@trdb2][/root]$ cd $GRID_HOME
[root@trdb2][/u01/app/19c/grid]$ mv OPatch OPatch.bak_2
[root@trdb2][/u01/app/19c/grid]$ unzip /tmp/patch/p6880880_190000_Linux-x86-64.zip -d $GRID_HOME

[root@trdb2][/u01/app/19c/grid]$ chown grid:oinstall -R $GRID_HOME/OPatch


[+ASM2:grid@trdb2][/u01/app/19c/grid]$ which opatch
/u01/app/19c/grid/OPatch/opatch


[+ASM2:grid@trdb2][/u01/app/19c/grid]$ opatch version
OPatch Version: 12.2.0.1.44

OPatch succeeded.

 

-->  oracle Opatch 백업

[root@trdb2][/root]$ cd $DB_HOME
[root@trdb2][/u01/app/oracle/product/19c/db_1]$ mv OPatch OPatch.bak_2

 

[root@trdb2][/u01/app/oracle/product/19c/db_1]$ unzip /tmp/patch/p6880880_190000_Linux-x86-64.zip -d $DB_HOME

[root@trdb2][/u01/app/oracle/product/19c/db_1]$ chown oracle:oinstall -R $DB_HOME/OPatch


[PRDB2:oracle@trdb2][/home/oracle]$ which opatch
/u01/app/oracle/product/19c/db_1/OPatch/opatch


[PRDB2:oracle@trdb2][/home/oracle]$ opatch version
OPatch Version: 12.2.0.1.44

OPatch succeeded.

 

5. RU 패치 파일 압축 해제

 

5-1. 1번 노드

 

[root@trdb1][/root]$ cd /tmp/patch

[root@trdb1][/tmp/patch]$ unzip p36916690_190000_Linux-x86-64.zip
[root@trdb1][/tmp/patch]$ chmod 777 -R /tmp/patch/36916690

 

5-2. 2번 노드

 

[root@trdb2][/root]$ cd /tmp/patch

[root@trdb2][/tmp/patch]$ unzip p36916690_190000_Linux-x86-64.zip
[root@trdb2][/tmp/patch]$ chmod 777 -R /tmp/patch/36916690

 

6. mgmtlsnr 및 mgmtdb 가 ON 상태인지 확인

 

[+ASM1:grid@trdb1][/home/grid]$ srvctl status mgmtlsnr
[+ASM1:grid@trdb1][/home/grid]$ srvctl status mgmtdb
[+ASM1:grid@trdb1][/home/grid]$ srvctl config mgmtlsnr
[+ASM1:grid@trdb1][/home/grid]$ srvctl config mgmtdb
[+ASM1:grid@trdb1][/home/grid]$ crsctl status resource ora.mgmtdb -t
[+ASM1:grid@trdb1][/home/grid]$ crsctl status resource ora.MGMTLSNR

--> 만약 off상태라면 (grid os user) --> 여기서 trdb2는 mgmtdb, mgmtlsnr이 떠 있는 인스턴스명임

srvctl enable mgmtlsnr -node trdb2
srvctl start  mgmtlsnr -node trdb2
srvctl enable mgmtdb -node trdb2
srvctl start mgmtdb -node trdb2


7. chad 가 중지되어 있는지 확인

 

[+ASM1:grid@trdb1][/home/grid]$  crsctl status resource ora.chad -t
--------------------------------------------------------------------------------
Name           Target  State        Server                   State details
--------------------------------------------------------------------------------
Local Resources
--------------------------------------------------------------------------------
ora.chad
               ONLINE  ONLINE       trdb1                    STABLE
               ONLINE  ONLINE       trdb2                    STABLE
--------------------------------------------------------------------------------

 

[+ASM1:grid@trdb1][/home/grid]$ srvctl stop cha

[+ASM1:grid@trdb1][/home/grid]$ crsctl status resource ora.chad -t

--------------------------------------------------------------------------------
Name           Target  State        Server                   State details
--------------------------------------------------------------------------------
Local Resources
--------------------------------------------------------------------------------
ora.chad
               OFFLINE OFFLINE      trdb1                    STABLE
               OFFLINE OFFLINE      trdb2                    STABLE
--------------------------------------------------------------------------------

 

8. RU 패치 작업

 

패치 작업 전 grid 및 oracle 엔진 백업

모든 노드에 대해 엔진 백업 작업을 해야함

 

GRID_HOME 백업)

root user로 접속

cd $GRID_HOME

cd ../

tar cvpzf grid.tar grid

 

ORACLE_HOME 백업

oracle user로 접속

cd $ORACLE_HOME

cd ../

tar cvpzf db_1.tar db_1

 

8-1. 1번 노드

 

--> 패치 충돌 검사 및 디스크 용량 확인 (grid os user)

[+ASM1:grid@trdb1][/home/grid]$ $GRID_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -phBaseDir /tmp/patch/36916690/36912597
[+ASM1:grid@trdb1][/home/grid]$ $GRID_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -phBaseDir /tmp/patch/36916690/36917416
[+ASM1:grid@trdb1][/home/grid]$ $GRID_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -phBaseDir /tmp/patch/36916690/36917397
[+ASM1:grid@trdb1][/home/grid]$ $GRID_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -phBaseDir /tmp/patch/36916690/36940756
[+ASM1:grid@trdb1][/home/grid]$ $GRID_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -phBaseDir /tmp/patch/36916690/36758186

 

[+ASM1:grid@trdb1][/home/grid]$ vi patch_list_grid_home.txt

[+ASM1:grid@trdb1][/home/grid]$ cat patch_list_grid_home.txt
/tmp/patch/36916690/36912597
/tmp/patch/36916690/36917416
/tmp/patch/36916690/36917397
/tmp/patch/36916690/36940756
/tmp/patch/36916690/36758186

 

[+ASM1:grid@trdb1][/home/grid]$ $GRID_HOME/OPatch/opatch prereq CheckSystemSpace -phBaseFile /home/grid/patch_list_grid_home.txt

 


--> 패치 충돌 검사 및 디스크 용량 확인 (oracle os user)

[PRDB1:oracle@trdb1][/home/oracle]$ $ORACLE_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -phBaseDir /tmp/patch/36916690/36912597
[PRDB1:oracle@trdb1][/home/oracle]$ $ORACLE_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -phBaseDir /tmp/patch/36916690/36917416

 

[PRDB1:oracle@trdb1][/home/oracle]$ vi patch_list_oracle_home.txt
[PRDB1:oracle@trdb1][/home/oracle]$ cat patch_list_oracle_home.txt
/tmp/patch/36916690/36912597
/tmp/patch/36916690/36917416

 

[PRDB1:oracle@trdb1][/home/oracle]$ $ORACLE_HOME/OPatch/opatch prereq CheckSystemSpace -phBaseFile /home/oracle/patch_list_oracle_home.txt

 

[root@trdb1][/root]$ $GRID_HOME/crs/install/rootcrs.sh -prepatch

 

--grid 패치 적용 (grid os user)

/tmp/patch/36916690/36912597
/tmp/patch/36916690/36917416

/tmp/patch/36916690/36917397
/tmp/patch/36916690/36940756
/tmp/patch/36916690/36758186

 

[+ASM1:grid@trdb1][/home/grid]$ $GRID_HOME/OPatch/opatch apply -oh $GRID_HOME -local /tmp/patch/36916690/36912597
[+ASM1:grid@trdb1][/home/grid]$ $GRID_HOME/OPatch/opatch apply -oh $GRID_HOME -local /tmp/patch/36916690/36917416
[+ASM1:grid@trdb1][/home/grid]$ $GRID_HOME/OPatch/opatch apply -oh $GRID_HOME -local /tmp/patch/36916690/36917397

[+ASM1:grid@trdb1][/home/grid]$ $GRID_HOME/OPatch/opatch apply -oh $GRID_HOME -local /tmp/patch/36916690/36940756


[+ASM1:grid@trdb1][/home/grid]$ $GRID_HOME/OPatch/opatch apply -oh $GRID_HOME -local /tmp/patch/36916690/36758186

[Nov 17, 2024 4:31:09 PM] [WARNING] OUI-67652:
                                    The following patch(es) are duplicate patches with patches installed in the Oracle Home.
                                     [ 36758186]
                                    You have already installed same patch(es) with same UPI(s) or same version(s).
                                    These patch(es) will be skipped.

--> 해당 패치가 이미 적용되어 있음을 확인 (이건 이미 적용돼있다고 스킵한 것임)

 

--oracle 패치 적용 (oracle os user)

/tmp/patch/36916690/36912597
/tmp/patch/36916690/36917416

 

[PRDB1:oracle@trdb1][/home/oracle]$ cd /tmp/patch/36916690/36912597/custom/scripts
[PRDB1:oracle@trdb1][/tmp/patch/36916690/36912597/custom/scripts]$ ./init
[PRDB1:oracle@trdb1][/tmp/patch/36916690/36912597/custom/scripts]$ ./prepatch.sh

[PRDB1:oracle@trdb1][/tmp/patch/36916690/36912597/custom/scripts]$ $ORACLE_HOME/OPatch/opatch apply -oh $ORACLE_HOME -local /tmp/patch/36916690/36912597

 

[PRDB1:oracle@trdb1][/home/oracle]$ cd /tmp/patch/36916690/36917416/custom/scripts
[PRDB1:oracle@trdb1][/tmp/patch/36916690/36917416/custom/scripts]$ ./prepatch.sh

[PRDB1:oracle@trdb1][/tmp/patch/36916690/36917416/custom/scripts]$ $ORACLE_HOME/OPatch/opatch apply -oh $ORACLE_HOME -local /tmp/patch/36916690/36917416


[PRDB1:oracle@trdb1][/tmp/patch/36916690/36917416/custom/scripts]$ ./postpatch.sh

 

[root@trdb1][/root]$ chown root $DB_HOME/bin/extjob
[root@trdb1][/root]$ chmod 4750 $DB_HOME/bin/extjob
[root@trdb1][/root]$ $GRID_HOME/rdbms/install/rootadd_rdbms.sh
[root@trdb1][/root]$ $GRID_HOME/crs/install/rootcrs.sh -postpatch


[root@trdb1][/root]$ mkdir -p /u01/app/oracle/cfgtoollogs/sqlpatch
[root@trdb1][/root]$ chmod 775 /u01/app/oracle/cfgtoollogs/sqlpatch

 

[PRDB1:oracle@trdb1][/home/oracle]$ sqlplus "/as sysdba"
SQL> @$ORACLE_HOME/rdbms/admin/utlrp.sql


--> 실패 시 아래의 조치를 함

grant execute on DBMS_RANDOM to PUBLIC;
grant execute on UTL_FILE to PUBLIC;
grant execute on UTL_HTTP to PUBLIC;
grant execute on DBMS_SQL to PUBLIC;
grant execute on UTL_TCP to PUBLIC;
grant execute on DBMS_LOB to PUBLIC;

@?/rdbms/admin/utlrp.sql

 

[PRDB1:oracle@trdb1][/home/oracle]$ cd $ORACLE_HOME/OPatch
[PRDB1:oracle@trdb1][/u01/app/oracle/product/12c/db_1/OPatch]$ ./datapatch -verbose

 

8-2. 2번 노드

 

--> 패치 충돌 검사 및 디스크 용량 확인 (grid os user)

[+ASM2:grid@trdb2][/home/grid]$ $GRID_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -phBaseDir /tmp/patch/36916690/36912597
[+ASM2:grid@trdb2][/home/grid]$ $GRID_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -phBaseDir /tmp/patch/36916690/36917416
[+ASM2:grid@trdb2][/home/grid]$ $GRID_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -phBaseDir /tmp/patch/36916690/36917397
[+ASM2:grid@trdb2][/home/grid]$ $GRID_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -phBaseDir /tmp/patch/36916690/36940756
[+ASM2:grid@trdb2][/home/grid]$ $GRID_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -phBaseDir /tmp/patch/36916690/36758186

 

[+ASM2:grid@trdb2][/home/grid]$ vi patch_list_grid_home.txt

[+ASM2:grid@trdb2][/home/grid]$ cat patch_list_grid_home.txt
/tmp/patch/36916690/36912597
/tmp/patch/36916690/36917416
/tmp/patch/36916690/36917397
/tmp/patch/36916690/36940756
/tmp/patch/36916690/36758186


[+ASM2:grid@trdb2][/home/grid]$ $GRID_HOME/OPatch/opatch prereq CheckSystemSpace -phBaseFile /home/grid/patch_list_grid_home.txt


--> 패치 충돌 검사 및 디스크 용량 확인 (oracle os user)

[PRDB2:oracle@trdb2][/home/oracle]$ $ORACLE_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -phBaseDir /tmp/patch/36916690/36912597
[PRDB2:oracle@trdb2][/home/oracle]$ $ORACLE_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -phBaseDir /tmp/patch/36916690/36917416

 

[PRDB2:oracle@trdb2][/home/oracle]$ vi patch_list_oracle_home.txt
[PRDB2:oracle@trdb2][/home/oracle]$ cat patch_list_oracle_home.txt
/tmp/patch/36916690/36912597
/tmp/patch/36916690/36917416

 

[PRDB2:oracle@trdb2][/home/oracle]$ $ORACLE_HOME/OPatch/opatch prereq CheckSystemSpace -phBaseFile /home/oracle/patch_list_oracle_home.txt

[root@trdb2][/root]$ $GRID_HOME/crs/install/rootcrs.sh -prepatch

 

--grid 패치 적용 (grid os user)

/tmp/patch/36916690/36912597
/tmp/patch/36916690/36917416

/tmp/patch/36916690/36917397
/tmp/patch/36916690/36940756
/tmp/patch/36916690/36758186

 

[+ASM2:grid@trdb2][/home/grid]$ $GRID_HOME/OPatch/opatch apply -oh $GRID_HOME -local /tmp/patch/36916690/36912597
[+ASM2:grid@trdb2][/home/grid]$ $GRID_HOME/OPatch/opatch apply -oh $GRID_HOME -local /tmp/patch/36916690/36917416
[+ASM2:grid@trdb2][/home/grid]$ $GRID_HOME/OPatch/opatch apply -oh $GRID_HOME -local /tmp/patch/36916690/36917397

[+ASM2:grid@trdb2][/home/grid]$ $GRID_HOME/OPatch/opatch apply -oh $GRID_HOME -local /tmp/patch/36916690/36940756


[+ASM2:grid@trdb2][/home/grid]$ $GRID_HOME/OPatch/opatch apply -oh $GRID_HOME -local /tmp/patch/36916690/36758186

[Nov 17, 2024 4:31:09 PM] [WARNING] OUI-67652:
                                    The following patch(es) are duplicate patches with patches installed in the Oracle Home.
                                     [ 36758186]
                                    You have already installed same patch(es) with same UPI(s) or same version(s).
                                    These patch(es) will be skipped.

--> 해당 패치가 이미 적용되어 있음을 확인

 

--> 2번째 노드의 oracle 패치를 적용전 아래의 체크 사항을 확인할것

 

--> grid os user

chmod 770 /u01/app/oraInventory/ContentsXML
chmod 660 /u01/app/oraInventory/ContentsXML/comps.xml
chmod 660 /u01/app/oraInventory/ContentsXML/inventory.xml
chmod 660 /u01/app/oraInventory/ContentsXML/libs.xml

---> 이거 특히 주의할것

chmod 660 /u01/app/oraInventory/ContentsXML/oui-patch.xml


--> oracle user# 시작하기전 아래의 명령으로 해당 파일의 읽기 및 쓰기 권한이 확인

ls -l /u01/app/oraInventory/ContentsXML/oui-patch.xml
cat /u01/app/oraInventory/ContentsXML/oui-patch.xml

 

--oracle 패치 적용 (oracle os user)

/tmp/patch/36916690/36912597
/tmp/patch/36916690/36917416

 

[PRDB2:oracle@trdb2][/home/oracle]$ cd /tmp/patch/36916690/36912597/custom/scripts
[PRDB2:oracle@trdb2][/tmp/patch/36916690/36912597/custom/scripts]$ ./init
[PRDB2:oracle@trdb2][/tmp/patch/36916690/36912597/custom/scripts]$ ./prepatch.sh
[PRDB2:oracle@trdb2][/tmp/patch/36916690/36912597/custom/scripts]$ $ORACLE_HOME/OPatch/opatch apply -oh $ORACLE_HOME -local /tmp/patch/36916690/36912597

 

[PRDB2:oracle@trdb2][/home/oracle]$ cd /tmp/patch/36916690/36917416/custom/scripts
[PRDB2:oracle@trdb2][/tmp/patch/36916690/36917416/custom/scripts]$ ./prepatch.sh

[PRDB2:oracle@trdb2][/tmp/patch/36916690/36917416/custom/scripts]$ $ORACLE_HOME/OPatch/opatch apply -oh $ORACLE_HOME -local /tmp/patch/36916690/36917416


[PRDB2:oracle@trdb2][/tmp/patch/36916690/36917416/custom/scripts]$ ./postpatch.sh

 

[root@trdb2][/root]$ chown root $DB_HOME/bin/extjob
[root@trdb2][/root]$ chmod 4750 $DB_HOME/bin/extjob
[root@trdb2][/root]$ $GRID_HOME/rdbms/install/rootadd_rdbms.sh


[root@trdb2][/root]$ $GRID_HOME/crs/install/rootcrs.sh -postpatch

CRS-4406: Oracle High Availability Services synchronous start failed.
CRS-41053: checking Oracle Grid Infrastructure for file permission issues

--> 여기서 CRS 안올라옴

[root@trdb2][/root]$ chown grid:oinstall /u01/app/oracle/diag

[root@trdb2][/u01/app/oracle/diag]$ chown grid:oinstall *

[root@trdb2][/u01/app]$ chown grid:oinstall oracle

[root@trdb2][/u01/app/oracle]$ chown grid:oinstall /u01/app/oracle/admin

GIPCD startup issue | CRS-2672 CRS-2883 CRS-4406 CRS-41053 (Doc ID 2981728.1)

[root@trdb2][/u01/app/oracle/crsdata/trdb2]$ chown -R grid:oinstall shm

 

[root@trdb2][/root]$ $GRID_HOME/crs/install/rootcrs.sh -postpatch

 

[root@trdb2][/root]$ mkdir -p /u01/app/oracle/cfgtoollogs/sqlpatch
[root@trdb2][/root]$ chmod 775 /u01/app/oracle/cfgtoollogs/sqlpatch

 

[PRDB1:oracle@trdb2][/home/oracle]$ sqlplus "/as sysdba"
SQL> @$ORACLE_HOME/rdbms/admin/utlrp.sql


--> 실패 시 아래의 조치를 함

grant execute on DBMS_RANDOM to PUBLIC;
grant execute on UTL_FILE to PUBLIC;
grant execute on UTL_HTTP to PUBLIC;
grant execute on DBMS_SQL to PUBLIC;
grant execute on UTL_TCP to PUBLIC;
grant execute on DBMS_LOB to PUBLIC;
@?/rdbms/admin/utlrp.sql

 

[PRDB2:oracle@trdb2][/home/oracle]$ cd $ORACLE_HOME/OPatch
[PRDB2:oracle@trdb2][/u01/app/oracle/product/19c/db_1/OPatch]$ ./datapatch -verbose

 

9. 패치 후 확인

 

[PRDB1:oracle@trdb1][/home/oracle]$ crsctl query crs releasepatch
Oracle Clusterware release patch level is [760403972] and the complete list of patches [36758186 36912597 36917397 36917416 36940756 ] have been applied on the local node. The release patch string is [19.25.0.0.0].

[PRDB1:oracle@trdb1][/home/oracle]$ crsctl query crs softwarepatch
Oracle Clusterware patch level on node trdb2 is [760403972].


[PRDB2:oracle@trdb2][/home/oracle]$ crsctl query crs releasepatch
Oracle Clusterware release patch level is [760403972] and the complete list of patches [36758186 36912597 36917397 36917416 36940756 ] have been applied on the local node. The release patch string is [19.25.0.0.0].

[PRDB2:oracle@trdb2][/home/oracle]$ crsctl query crs softwarepatch
Oracle Clusterware patch level on node trdb1 is [760403972].

 

--> 패치 정상 등록 확인

SELECT A.INSTALL_ID
     , A.PATCH_ID
     , A.PATCH_UID
     , A.PATCH_TYPE
     , A.ACTION
     , A.STATUS
     , A.ACTION_TIME
     , A.DESCRIPTION
     , A.LOGFILE
     , A.RU_LOGFILE
     , A.FLAGS
     , A.PATCH_DESCRIPTOR
     , A.PATCH_DIRECTORY
     , A.SOURCE_VERSION
     , A.SOURCE_BUILD_DESCRIPTION
     , A.SOURCE_BUILD_TIMESTAMP
     , A.TARGET_VERSION
     , A.TARGET_BUILD_DESCRIPTION
     , A.TARGET_BUILD_TIMESTAMP
  FROM DBA_REGISTRY_SQLPATCH A
 ORDER BY A.ACTION_TIME

;

 

--> cha 다시 시작

[root@trdb1][/root]$ srvctl start cha
[root@trdb1][/root]$ crsctl status resource ora.chad -t
--------------------------------------------------------------------------------
Name           Target  State        Server                   State details
--------------------------------------------------------------------------------
Local Resources
--------------------------------------------------------------------------------
ora.chad
               ONLINE  ONLINE       trdb1                    STABLE
               ONLINE  ONLINE       trdb2                    STABLE
--------------------------------------------------------------------------------
[root@trdb1][/root]$ crsctl status resource ora.chad

NAME=ora.chad
TYPE=ora.chad.type
TARGET=ONLINE         , ONLINE
STATE=ONLINE on trdb1, ONLINE on trdb2

 

10. 패치 롤백 시 (각각의 노드에서 실행)

 

Supplemental Readme - Grid Infrastructure Release Update 12.2.0.1.x / 18c /19c (Doc ID 2246888.1)

5 Manual Steps for Apply/Rollback Patch

--> 참고 할 것

 

--> root os user

$GRID_HOME/crs/install/rootcrs.sh -prepatch -rollback

 

--> grid os user

$GRID_HOME/OPatch/opatch rollback -local -id 패치번호 -oh $GRID_HOME


--> oracle os user

$ORACLE_HOME/OPatch/opatch rollback -local -id 패치번호 -oh $ORACLE_HOME

 

--> root os user

$GRID_HOME/rdbms/install/rootadd_rdbms.sh

$GRID_HOME/crs/install/rootcrs.sh -prepatch -rollback

 

--> oracle os user

sqlplus "/as sysdba"

startup

quit

cd $ORACLE_HOME/OPatch

./datapatch -verbose

반응형

+ Recent posts