OS 환경 : Oracle Linux 8.7 (64bit)
DB 환경 : Oracle Database 19.27.0.0
방법 : 오라클 19c ahf 기동 중 ru 패치 테스트
현재 db서버는 19c가 설치되어 있고 ru 패치를 진행할 예정임
이때 tfa(ahf)는 내리지 않고 ru 패치를 진행해봄
테스트
db 종료
|
1
2
3
4
|
SQL> shutdown immediate
Database closed.
Database dismounted.
ORACLE instance shut down.
|
리스너 종료
|
1
2
3
4
5
6
7
8
|
$ lsnrctl stop
LSNRCTL for Linux: Version 19.0.0.0.0 - Production on 26-OCT-2025 11:25:03
Copyright (c) 1991, 2025, Oracle. All rights reserved.
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=ora19fs)(PORT=1521)))
The command completed successfully
|
현재 ahf 프로세스는 기동중인 상태
|
1
2
3
4
5
6
7
8
9
10
11
12
|
$ ps -ef|grep ahf
root 15812 1 0 Oct16 ? 02:04:28 /opt/oracle.ahf/jre/bin/java --add-opens java.base/java.lang=ALL-UNNAMED -server -Xms32m -Xmx64m -Djava.awt.headless=true -Ddisable.checkForUpdate=true -XX:+UseParallelGC -XX:MinHeapFreeRatio=20 -XX:MaxHeapFreeRatio=40 -XX:+ExitOnOutOfMemoryError oracle.rat.tfa.TFAMain /opt/oracle.ahf/tfa
root 16415 1 0 Oct16 ? 01:29:33 /opt/oracle.ahf/shm/ahf-sysmon/bin/ahf-sysmon
oracle 16477 1 0 Oct16 ? 00:06:23 /bin/sh ./OSWatcher.sh 30 48 /bin/gzip /opt/oracle.ahf.data/oracle.ahf/data/repository/suptools/ora19fs/oswbb/oracle/archive
oracle 16801 16477 0 Oct16 ? 00:01:53 /bin/sh ./OSWatcherFM.sh 48 /opt/oracle.ahf.data/oracle.ahf/data/repository/suptools/ora19fs/oswbb/oracle/archive
oracle 304012 16477 0 11:26 ? 00:00:00 /bin/sh ./vmsub.sh /opt/oracle.ahf.data/oracle.ahf/data/repository/suptools/ora19fs/oswbb/oracle/archive/oswvmstat/ora19fs_vmstat_25.10.30.1100.dat vmstat 1 3 1
oracle 304016 16477 0 11:26 ? 00:00:00 /bin/sh ./mpsub.sh /opt/oracle.ahf.data/oracle.ahf/data/repository/suptools/ora19fs/oswbb/oracle/archive/oswmpstat/ora19fs_mpstat_25.10.30.1100.dat mpstat -P ALL 1 2 1
oracle 304024 16477 0 11:26 ? 00:00:00 /bin/sh ./iosub.sh /opt/oracle.ahf.data/oracle.ahf/data/repository/suptools/ora19fs/oswbb/oracle/archive/oswiostat/ora19fs_iostat_25.10.30.1100.dat iostat -xk 1 3 1
oracle 304039 16477 0 11:26 ? 00:00:00 /bin/sh ./piddsub.sh /opt/oracle.ahf.data/oracle.ahf/data/repository/suptools/ora19fs/oswbb/oracle/archive/oswpidstatd/ora19fs_pidstatd_25.10.30.1100.dat 1
oracle 304041 16477 0 11:26 ? 00:00:00 /bin/sh ./pidsub.sh /opt/oracle.ahf.data/oracle.ahf/data/repository/suptools/ora19fs/oswbb/oracle/archive/oswpidstat/ora19fs_pidstat_25.10.30.1100.dat pidstat 1
oracle 304045 16477 0 11:26 ? 00:00:00 /bin/sh ./nfssub.sh /opt/oracle.ahf.data/oracle.ahf/data/repository/suptools/ora19fs/oswbb/oracle/archive/oswnfsiostat/ora19fs_nfsiostat_25.10.30.1100.dat nfsiostat 1 3 1
oracle 304123 299695 0 11:26 pts/0 00:00:00 grep --color=auto ahf
|
OPatch 최신 파일로 교체
|
1
2
3
|
$ cd $ORACLE_HOME
$ mv OPatch OPatch_old
$ unzip -q /app/oracle/media/p6880880_190000_Linux-x86-64.zip
|
패치파일 압축 해제
|
1
2
|
$ cd /app/oracle/media
$ unzip -q p37952382_190000_Linux-x86-64.zip
|
패치 충돌 체크
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
|
$ $ORACLE_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -phBaseDir 37960098
Oracle Interim Patch Installer version 12.2.0.1.46
Copyright (c) 2025, Oracle Corporation. All rights reserved.
PREREQ session
Oracle Home : /app/oracle/product/19c
Central Inventory : /app/oraInventory
from : /app/oracle/product/19c/oraInst.loc
OPatch version : 12.2.0.1.46
OUI version : 12.2.0.7.0
Log file location : /app/oracle/product/19c/cfgtoollogs/opatch/opatch2025-10-26_20-40-05PM_1.log
Invoking prereq "checkconflictagainstohwithdetail"
Prereq "checkConflictAgainstOHWithDetail" passed.
OPatch succeeded.
|
충돌나지 않음
패치 시도
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
|
$ cd /app/oracle/media/37952382/37957391/37960098/
$ opatch apply
Oracle Interim Patch Installer version 12.2.0.1.46
Copyright (c) 2025, Oracle Corporation. All rights reserved.
Oracle Home : /app/oracle/product/19c
Central Inventory : /app/oraInventory
from : /app/oracle/product/19c/oraInst.loc
OPatch version : 12.2.0.1.46
OUI version : 12.2.0.7.0
Log file location : /app/oracle/product/19c/cfgtoollogs/opatch/opatch2025-10-26_20-47-26PM_1.log
Verifying environment and performing prerequisite checks...
OPatch continues with these patches: 37960098
Do you want to proceed? [y|n]
y
User Responded with: Y
All checks passed.
Please shutdown Oracle instances running out of this ORACLE_HOME on the local system.
(Oracle Home = '/app/oracle/product/19c')
Is the local system ready for patching? [y|n]
y
User Responded with: Y
Backing up files...
Applying interim patch '37960098' to OH '/app/oracle/product/19c'
ApplySession: Optional component(s) [ oracle.network.gsm, 19.0.0.0.0 ] , [ oracle.assistants.asm, 19.0.0.0.0 ] , [ oracle.crypto.rsf, 19.0.0.0.0 ] , [ oracle.precomp.companion, 19.0.0.0.0 ] , [ oracle.rdbms.ic, 19.0.0.0.0 ] , [ oracle.rdbms.tg4db2, 19.0.0.0.0 ] , [ oracle.sdo.companion, 19.0.0.0.0 ] , [ oracle.tfa, 19.0.0.0.0 ] , [ oracle.ldap.ztk, 19.0.0.0.0 ] , [ oracle.options.olap, 19.0.0.0.0 ] , [ oracle.oid.client, 19.0.0.0.0 ] , [ oracle.ons.cclient, 19.0.0.0.0 ] , [ oracle.rdbms.tg4sybs, 19.0.0.0.0 ] , [ oracle.xdk.companion, 19.0.0.0.0 ] , [ oracle.pg4appc, 19.0.0.0.0 ] , [ oracle.pg4appc, 19.0.0.0.0 ] , [ oracle.pg4mq, 19.0.0.0.0 ] , [ oracle.oraolap.mgmt, 19.0.0.0.0 ] , [ oracle.java.sqlj.sqljruntime, 19.0.0.0.0 ] , [ oracle.network.cman, 19.0.0.0.0 ] , [ oracle.rdbms.tg4ifmx, 19.0.0.0.0 ] , [ oracle.rdbms.tg4tera, 19.0.0.0.0 ] , [ oracle.ons.eons.bwcompat, 19.0.0.0.0 ] , [ oracle.options.olap.api, 19.0.0.0.0 ] , [ oracle.net.cman, 19.0.0.0.0 ] , [ oracle.rdbms.tg4msql, 19.0.0.0.0 ] , [ oracle.jdk, 1.8.0.191.0 ] , [ oracle.jdk, 1.8.0.391.11 ] not present in the Oracle Home or a higher version is found.
Patching component oracle.rdbms.rsf, 19.0.0.0.0...
Patching component oracle.rdbms.util, 19.0.0.0.0...
Patching component oracle.rdbms, 19.0.0.0.0...
Patching component oracle.assistants.acf, 19.0.0.0.0...
Patching component oracle.assistants.deconfig, 19.0.0.0.0...
Patching component oracle.assistants.server, 19.0.0.0.0...
Patching component oracle.blaslapack, 19.0.0.0.0...
Patching component oracle.buildtools.rsf, 19.0.0.0.0...
Patching component oracle.ctx, 19.0.0.0.0...
Patching component oracle.dbdev, 19.0.0.0.0...
Patching component oracle.dbjava.ic, 19.0.0.0.0...
Patching component oracle.dbjava.jdbc, 19.0.0.0.0...
Patching component oracle.dbjava.ucp, 19.0.0.0.0...
Patching component oracle.duma, 19.0.0.0.0...
Patching component oracle.javavm.client, 19.0.0.0.0...
Patching component oracle.ldap.owm, 19.0.0.0.0...
Patching component oracle.ldap.rsf, 19.0.0.0.0...
Patching component oracle.ldap.security.osdt, 19.0.0.0.0...
Patching component oracle.marvel, 19.0.0.0.0...
Patching component oracle.network.rsf, 19.0.0.0.0...
Patching component oracle.odbc.ic, 19.0.0.0.0...
Patching component oracle.ons, 19.0.0.0.0...
Patching component oracle.ons.ic, 19.0.0.0.0...
Patching component oracle.oracore.rsf, 19.0.0.0.0...
Patching component oracle.perlint, 5.28.1.0.0...
Patching component oracle.precomp.common.core, 19.0.0.0.0...
Patching component oracle.precomp.rsf, 19.0.0.0.0...
Patching component oracle.rdbms.crs, 19.0.0.0.0...
Patching component oracle.rdbms.dbscripts, 19.0.0.0.0...
Patching component oracle.rdbms.deconfig, 19.0.0.0.0...
Patching component oracle.rdbms.oci, 19.0.0.0.0...
Patching component oracle.rdbms.rsf.ic, 19.0.0.0.0...
Patching component oracle.rdbms.scheduler, 19.0.0.0.0...
Patching component oracle.rhp.db, 19.0.0.0.0...
Patching component oracle.rsf, 19.0.0.0.0...
Patching component oracle.sdo, 19.0.0.0.0...
Patching component oracle.sdo.locator.jrf, 19.0.0.0.0...
Patching component oracle.sqlplus, 19.0.0.0.0...
Patching component oracle.sqlplus.ic, 19.0.0.0.0...
Patching component oracle.tfa.db, 19.0.0.0.0...
Patching component oracle.wwg.plsql, 19.0.0.0.0...
Patching component oracle.xdk.rsf, 19.0.0.0.0...
Patching component oracle.oraolap.api, 19.0.0.0.0...
Patching component oracle.ldap.ssl, 19.0.0.0.0...
Patching component oracle.rdbms.locator, 19.0.0.0.0...
Patching component oracle.nlsrtl.rsf.core, 19.0.0.0.0...
Patching component oracle.rdbms.rman, 19.0.0.0.0...
Patching component oracle.oraolap.dbscripts, 19.0.0.0.0...
Patching component oracle.mgw.common, 19.0.0.0.0...
Patching component oracle.rdbms.install.common, 19.0.0.0.0...
Patching component oracle.oraolap, 19.0.0.0.0...
Patching component oracle.network.aso, 19.0.0.0.0...
Patching component oracle.ctx.atg, 19.0.0.0.0...
Patching component oracle.nlsrtl.rsf.lbuilder, 19.0.0.0.0...
Patching component oracle.rdbms.rat, 19.0.0.0.0...
Patching component oracle.ctx.rsf, 19.0.0.0.0...
Patching component oracle.ldap.rsf.ic, 19.0.0.0.0...
Patching component oracle.rdbms.install.plugins, 19.0.0.0.0...
Patching component oracle.rdbms.dm, 19.0.0.0.0...
Patching component oracle.xdk.xquery, 19.0.0.0.0...
Patching component oracle.nlsrtl.rsf, 19.0.0.0.0...
Patching component oracle.nlsrtl.rsf.core, 19.0.0.0.0...
Patching component oracle.nlsrtl.rsf.ic, 19.0.0.0.0...
Patching component oracle.sqlj.sqljruntime, 19.0.0.0.0...
Patching component oracle.network.listener, 19.0.0.0.0...
Patching component oracle.javavm.server, 19.0.0.0.0...
Patching component oracle.ldap.client, 19.0.0.0.0...
Patching component oracle.install.deinstalltool, 19.0.0.0.0...
Patching component oracle.xdk, 19.0.0.0.0...
Patching component oracle.network.client, 19.0.0.0.0...
Patching component oracle.rdbms.hs_common, 19.0.0.0.0...
Patching component oracle.rdbms.drdaas, 19.0.0.0.0...
Patching component oracle.dbtoolslistener, 19.0.0.0.0...
Patching component oracle.sdo.locator, 19.0.0.0.0...
Patching component oracle.ovm, 19.0.0.0.0...
Patching component oracle.rdbms.lbac, 19.0.0.0.0...
Patching component oracle.odbc, 19.0.0.0.0...
Patching component oracle.rdbms.dv, 19.0.0.0.0...
Patching component oracle.rdbms.hsodbc, 19.0.0.0.0...
Patching component oracle.xdk.server, 19.0.0.0.0...
Patching component oracle.xdk.parser.java, 19.0.0.0.0...
Patching component oracle.precomp.common, 19.0.0.0.0...
Patching component oracle.precomp.lang, 19.0.0.0.0...
Patching component oracle.jdk, 1.8.0.201.0...
Patch 37960098 successfully applied.
Sub-set patch [37642901] has become inactive due to the application of a super-set patch [37960098].
Please refer to Doc ID 2161861.1 for any possible further required actions.
Log file location: /app/oracle/product/19c/cfgtoollogs/opatch/opatch2025-10-31_20-47-26PM_1.log
OPatch succeeded.
|
ahf, tfa가 실행중인 상태에서 ru 패치가 잘됨(rollback도 잘됨)
참고로 db 서비스가 기동된 상태에서 패치를 시도하면 아래와 같은 code 73 에러가 발생함
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
|
$ opatch rollback -id 37642901
Oracle Interim Patch Installer version 12.2.0.1.46
Copyright (c) 2025, Oracle Corporation. All rights reserved.
Oracle Home : /app/oracle/product/19c
Central Inventory : /app/oraInventory
from : /app/oracle/product/19c/oraInst.loc
OPatch version : 12.2.0.1.46
OUI version : 12.2.0.7.0
Log file location : /app/oracle/product/19c/cfgtoollogs/opatch/opatch2025-11-13_20-08-22PM_1.log
Patches will be rolled back in the following order:
37642901
Prerequisite check "CheckActiveFilesAndExecutables" failed.
The details are:
Following active files/executables/libs are used by ORACLE_HOME :/app/oracle/product/19c
/app/oracle/product/19c/lib/libclntsh.so.19.1
/app/oracle/product/19c/bin/oracle
/app/oracle/product/19c/lib/libasmclntsh19.so
/app/oracle/product/19c/lib/libsqlplus.so
/app/oracle/product/19c/bin/tnslsnr
UtilSession failed: Prerequisite check "CheckActiveFilesAndExecutables" failed.
Log file location: /app/oracle/product/19c/cfgtoollogs/opatch/opatch2025-11-13_20-08-22PM_1.log
OPatch failed with error code 73
|
결론 :
현재 ahf, tfa가 ORACLE_HOME이 아닌 /opt/oracle.ahf/에서 실행중이어서 opatch(ru 패치)가 정상적으로 수행됨
하지만 $ORACLE_HOME에서 tfa가 기동중인 경우는 패치가 제대로 수행되지 않을 수 있어
tfa를 중지한 뒤 패치를 진행해야함
참조 :
'ORACLE > Admin' 카테고리의 다른 글
| 오라클 19c expdp master_table 옵션 (0) | 2025.11.02 |
|---|---|
| 오라클 19c job의 failure_count 초기화 (0) | 2025.10.25 |
| 오라클 19c utlrp 시 수행되는 job (0) | 2025.10.19 |
| 오라클 26ai 공개 (0) | 2025.10.14 |
| 오라클 19c 업그레이드 시 job의 nls_env 유의사항 (0) | 2025.10.12 |
