1. 테스트 환경
OS : Oracle Linux Server 7.9 (Linux
rdb01d 5.4.17-2102.201.3.el7uek.x86_64)
DB : Oracle Database 19c Enterprise
Edition Release 19.0.0.0.0 - Production (Version 19.27.0.0.0)
RAC1 :
ol7ora19r1(192.168.0.21) : ORA19R1
RAC2 : ol7ora19r2(192.168.0.22) :
ORA19R2
2. root os user로 GRID_HOME과 ORACLE_HOME 이하의 파일 권한을 모두 일괄적으로 변경
--절대로 이런 실수를 하지 않도록 조심! 또 조심! 또 조심! 해야함
--1번
노드
[root@ol7ora19r1][/root]$ echo
$GRID_HOME
/u01/app/19c/grid
[root@ol7ora19r1][/root]$ chown grid:oinstall -R /u01/app/19c/grid
[root@ol7ora19r1][/root]$ echo
$ORACLE_HOME
/u01/app/oracle/product/19c/db_1
[root@ol7ora19r1][/root]$ chown oracle:oinstall -R /u01/app/oracle/product/19c/db_1
--2번
노드
[root@ol7ora19r2][/root]$ echo
$GRID_HOME
/u01/app/19c/grid
[root@ol7ora19r2][/root]$ chown grid:oinstall -R /u01/app/19c/grid
[root@ol7ora19r2][/root]$ echo
$ORACLE_HOME
/u01/app/oracle/product/19c/db_1
[root@ol7ora19r2][/root]$ chown oracle:oinstall -R /u01/app/oracle/product/19c/db_1
--이러한 실수를
저지르면 Oracle 인스턴스 alert log에 아래와 같은 에러가 발생함
2025-08-10T13:33:43.232396+09:00
***********************************************************************
Fatal NI connect error 12547,
connecting
to:
(DESCRIPTION=(ADDRESS=(PROTOCOL=beq)(PROGRAM=/u01/app/19c/grid/bin/oracle)(ARGV0=oracle+ASM1_mmnl_ora19r1)(ENVS='ORACLE_HOME=/u01/app/19c/grid,ORACLE_SID=+ASM1,ORA_SERVER_BROKER_MODE=NONE')(ARGS='(DESCRIPTION=(LOCAL=YES)(ADDRESS=(PROTOCOL=beq)))'))(CONNECT_DATA=(ORACLE_HOME=/u01/app/19c/grid)(SID=+ASM1)(CID=(PROGRAM=oracle)(HOST=ol7ora19r1)(USER=oracle)))(SECURITY=(AUTHENTICATION_SERVICE=beq))(enable=setuser))
VERSION
INFORMATION:
TNS for Linux:
Version 19.0.0.0.0 - Production
Oracle Bequeath NT Protocol Adapter for Linux: Version 19.0.0.0.0 -
Production
Version 19.27.0.0.0
Time: 10-AUG-2025
13:33:43
Tracing not turned on.
Tns error
struct:
ns main err code: 12547
TNS-12547: TNS:lost
contact
ns secondary err code: 12560
nt main err code: 517
TNS-00517: Lost
contact
nt secondary err code: 32
nt
OS err code: 0
--또한 아래와
같이 db 접속도 되지 않음
[ORA19R1:oracle@ol7ora19r1][/home/oracle]$ alias
ss
alias ss='rlwrap sqlplus "/as sysdba"'
[ORA19R1:oracle@ol7ora19r1][/home/oracle]$ ss
SQL*Plus: Release 19.0.0.0.0 -
Production on Sun Aug 10 13:34:47 2025
Version
19.27.0.0.0
Copyright (c) 1982, 2024, Oracle. All rights reserved.
Connected.
ERROR:
ORA-01012: not
logged on
Process ID: 0
Session ID: 0 Serial number: 0
[2025-08-10 13:34:48][ol7ora19r1]<SYS@ORA19R1>
--지금부터 이 상황을 복구 하는 것이 목표임
2. 모든 노드의 CRS를 내림
--1번
노드
[root@ol7ora19r1][/root]$ cd
$GRID_HOME/crs/install
[root@ol7ora19r1][/u01/app/19c/grid/crs/install]$ ./rootcrs.sh
-unlock
Using configuration parameter file:
/u01/app/19c/grid/crs/install/crsconfig_params
The log of current session can
be found at:
/u01/app/oracle/crsdata/ol7ora19r1/crsconfig/crsunlock_ol7ora19r1_2025-08-10_01-39-00PM.log
2025/08/10
13:39:47 CLSRSC-4012: Shutting down Oracle Trace File Analyzer (TFA)
Collector.
2025/08/10 13:39:56 CLSRSC-4013: Successfully shut down Oracle
Trace File Analyzer (TFA) Collector.
2025/08/10 13:39:56 CLSRSC-347:
Successfully unlock /u01/app/19c/grid
--oracle alert log
2025-08-10T13:39:02.031704+09:00
Instance terminated by USER, pid =
6698
2025-08-10T13:39:02.047516+09:00
Warning: 2 processes are still
attacheded to shmid 5:
(size: 53248 bytes, creator pid: 1940, last
attach/detach pid: 6698)
Instance shutdown complete (OS id:
6698)
--grid
alert log
2025-08-10 13:39:00.790 [OHASD(2070)]CRS-2791: Starting shutdown of
Oracle High Availability Services-managed resources on
'ol7ora19r1'
2025-08-10 13:39:00.818 [ORAROOTAGENT(843)]CRS-5024: Unmounting
file system "/acfs1_vol1"
2025-08-10 13:39:01.163
[ORAROOTAGENT(843)]CRS-5025: File system "/acfs1_vol1" unmounted
2025-08-10
13:39:18.136 [ORAROOTAGENT(843)]CRS-5822: Agent
'/u01/app/19c/grid/bin/orarootagent_root' disconnected from server. Details at
(:CRSAGF00117:) {0:1:69} in
/u01/app/oracle/diag/crs/ol7ora19r1/crs/trace/crsd_orarootagent_root.trc.
2025-08-10
13:39:21.011 [MDNSD(2662)]CRS-5602: mDNS service stopping by
request.
2025-08-10 13:39:21.624 [MDNSD(2662)]CRS-8504: Oracle Clusterware
MDNSD process with operating system process ID 2662 is exiting
2025-08-10
13:39:42.778 [OCTSSD(9415)]CRS-2405: The Cluster Time Synchronization Service on
host ol7ora19r1 is shutdown by user
2025-08-10 13:39:42.812
[OCTSSD(9415)]CRS-8504: Oracle Clusterware OCTSSD process with operating system
process ID 9415 is exiting
2025-08-10 13:39:43.938 [OCSSD(3781)]CRS-1603:
CSSD on node ol7ora19r1 has been shut down.
2025-08-10 13:39:46.959
[GPNPD(2717)]CRS-2329: Grid Plug and Play Daemon(GPNPD) on node ol7ora19r1 shut
down.
2025-08-10 13:39:47.072 [OHASD(2070)]CRS-2793: Shutdown of Oracle High
Availability Services-managed resources on 'ol7ora19r1' has
completed
2025-08-10 13:39:47.088 [ORAROOTAGENT(2521)]CRS-5822: Agent
'/u01/app/19c/grid/bin/orarootagent_root' disconnected from server. Details at
(:CRSAGF00117:) {0:3:12} in
/u01/app/oracle/diag/crs/ol7ora19r1/crs/trace/ohasd_orarootagent_root.trc.
[root@ol7ora19r1][/u01/app/19c/grid/crs/install]$ alias
csrt
alias csrt='crsctl stat res -t'
[root@ol7ora19r1][/u01/app/19c/grid/crs/install]$
csrt
CRS-4535: Cannot communicate with Cluster Ready Services
CRS-4000:
Command Status failed, or completed with errors.
[root@ol7ora19r1][/u01/app/19c/grid/crs/install]$ ps -ef | grep -i
d.bin
root 8242 1220 0 13:41
pts/2 00:00:00 grep --color=auto -i d.bin
--> 1번 노드가 모두 내려감
------------------------------------------------------------------------------------------------------------------------------
--2번
노드
[root@ol7ora19r2][/root]$ cd
$GRID_HOME/crs/install
[root@ol7ora19r2][/u01/app/19c/grid/crs/install]$
./rootcrs.sh -unlock
Using configuration parameter file:
/u01/app/19c/grid/crs/install/crsconfig_params
The log of current session can
be found at:
/u01/app/oracle/crsdata/ol7ora19r2/crsconfig/crsunlock_ol7ora19r2_2025-08-10_01-44-07PM.log
2025/08/10
13:44:43 CLSRSC-4012: Shutting down Oracle Trace File Analyzer (TFA)
Collector.
2025/08/10 13:44:52 CLSRSC-4013: Successfully shut down Oracle
Trace File Analyzer (TFA) Collector.
2025/08/10 13:44:52 CLSRSC-347:
Successfully unlock /u01/app/19c/grid
--oracle
alert log
2025-08-10T13:44:07.915843+09:00
Shutting down ORACLE instance (abort)
(OS id: 5083)
2025-08-10T13:44:07.915966+09:00
Shutdown is initiated by
oraagent.bin@ol7ora19r2 (TNS V1-V3).
License high water
mark = 7
USER (ospid: 5083): terminating the
instance
2025-08-10T13:44:09.015173+09:00
Instance terminated by USER, pid
= 5083
2025-08-10T13:44:09.267073+09:00
Instance shutdown complete (OS id:
5083)
--grid
alert log
2025-08-10 13:44:07.821 [OHASD(2075)]CRS-2791: Starting shutdown of
Oracle High Availability Services-managed resources on
'ol7ora19r2'
2025-08-10 13:44:07.902 [ORAROOTAGENT(5060)]CRS-5024: Unmounting
file system "/acfs1_vol1"
2025-08-10 13:44:08.217
[ORAROOTAGENT(5060)]CRS-5025: File system "/acfs1_vol1" unmounted
2025-08-10
13:44:17.601 [ORAROOTAGENT(5060)]CRS-5822: Agent
'/u01/app/19c/grid/bin/orarootagent_root' disconnected from server. Details at
(:CRSAGF00117:) {0:1:49} in
/u01/app/oracle/diag/crs/ol7ora19r2/crs/trace/crsd_orarootagent_root.trc.
2025-08-10
13:44:20.440 [MDNSD(2498)]CRS-5602: mDNS service stopping by
request.
2025-08-10 13:44:21.045 [MDNSD(2498)]CRS-8504: Oracle Clusterware
MDNSD process with operating system process ID 2498 is exiting
2025-08-10
13:44:25.670 [GIPCD(2627)]CRS-7503: The Oracle Grid Infrastructure process
'gipcd' observed communication issues between node 'ol7ora19r2' and node
'ol7ora19r1', interface list of local node 'ol7ora19r2' is '10.0.0.22:15291;',
interface list of remote node 'ol7ora19r1' is '10.0.0.21:39563;'.
2025-08-10
13:44:38.815 [OCTSSD(3934)]CRS-2405: The Cluster Time Synchronization Service on
host ol7ora19r2 is shutdown by user
2025-08-10 13:44:38.825
[OCTSSD(3934)]CRS-8504: Oracle Clusterware OCTSSD process with operating system
process ID 3934 is exiting
2025-08-10 13:44:39.851 [OCSSD(3546)]CRS-1603:
CSSD on node ol7ora19r2 has been shut down.
2025-08-10 13:44:42.866
[GPNPD(2548)]CRS-2329: Grid Plug and Play Daemon(GPNPD) on node ol7ora19r2 shut
down.
2025-08-10 13:44:43.482 [OHASD(2075)]CRS-2793: Shutdown of Oracle High
Availability Services-managed resources on 'ol7ora19r2' has
completed
2025-08-10 13:44:43.498 [ORAROOTAGENT(2357)]CRS-5822: Agent
'/u01/app/19c/grid/bin/orarootagent_root' disconnected from server. Details at
(:CRSAGF00117:) {0:1:12} in
/u01/app/oracle/diag/crs/ol7ora19r2/crs/trace/ohasd_orarootagent_root.trc.
[root@ol7ora19r2][/u01/app/19c/grid/crs/install]$ alias
csrt
alias csrt='crsctl stat res -t'
[root@ol7ora19r2][/u01/app/19c/grid/crs/install]$
csrt
CRS-4535: Cannot communicate with Cluster Ready Services
CRS-4000:
Command Status failed, or completed with errors.
[root@ol7ora19r2][/u01/app/19c/grid/crs/install]$ ps -ef | grep
d.bin
root 6387 9219 0 13:45
pts/2 00:00:00 grep --color=auto
d.bin
--> 2번 노드가 모두
내려감
3. 1번 노드의 파일 권한 복구
3-1. $ORACLE_BASE/crsdata/호스트네임/output
위치 mv로 백업 후 output 디렉토리 생성
[root@ol7ora19r1][/root]$ echo
$ORACLE_BASE
/u01/app/oracle
[root@ol7ora19r1][/root]$ cd
$ORACLE_BASE/crsdata/ol7ora19r1/output
[root@ol7ora19r1][/u01/app/oracle/crsdata/ol7ora19r1/output]$ ls
-l
total 1448
-rw-r--r--. 1 grid oinstall 9934
Aug 10 13:22 crsd_jagent_gridOUT.trc
-rw-r--r--. 1 grid
oinstall 5 Aug 10 13:22
crsd_jagent_grid.pid
-rw-r--r--. 1 grid oinstall 15231 Aug
10 13:39 crsd_oraagent_gridOUT.trc
-rw-r--r--. 1 grid
oinstall 4 Aug 10 13:22
crsd_oraagent_grid.pid
-rw-r--r--. 1 oracle oinstall 28290 Aug 10 13:39
crsd_oraagent_oracleOUT.trc
-rw-r--r--. 1 oracle
oinstall 5 Aug 10 13:22
crsd_oraagent_oracle.pid
-rw-r--r--. 1 root
root 9878 Aug 10 13:22
crsd_orarootagent_rootOUT.trc
-rw-r--r--. 1 root
root 4 Aug 10 13:22
crsd_orarootagent_root.pid
-rw-r--r--. 1 root
root 53575 Aug 10 13:22 crsdOUT.trc
-rw-r--r--.
1 root root 4
Aug 10 13:22 crsd.pid
-rw-r--r--. 1 grid oinstall 12850 Aug
10 13:22 crsd_scriptagent_gridOUT.trc
-rw-r--r--. 1 grid
oinstall 5 Aug 10 13:22
crsd_scriptagent_grid.pid
-rw-r--r--. 1 root
root 241 Aug 10 13:17
crswrapexece.log
-rw-r--r--. 1 grid oinstall 10266 Aug 10
13:17 evmdOUT.trc
-rw-r--r--. 1 grid
oinstall 5 Aug 10 13:17 evmd.pid
-rw-r--r--. 1
grid oinstall 16314 Aug 10 13:39
evmloggerOUT.trc
-rw-r--r--. 1 grid
oinstall 5 Aug 10 13:17
evmlogger.pid
-rw-r--r--. 1 root
root 47564 Aug 10 13:22
gipcdOUT.trc
-rw-r--r--. 1 root
root 5 Aug 10 13:17
gipcd.pid
-rw-r--r--. 1 grid oinstall 12615 Aug 10 13:17
gpnpdOUT.trc
-rw-r--r--. 1 grid
oinstall 5 Aug 10 13:17 gpnpd.pid
-rw-r--r--. 1
grid oinstall 20607 Aug 10 13:39 mdnsdOUT.trc
-rw-r--r--. 1
grid oinstall 5 Aug 10 13:17
mdnsd.pid
-rw-r--r--. 1 grid oinstall 2889 Aug 10
13:22 ochadOUT.trc
-rw-r--r--. 1 grid oinstall 895301 Aug 10
13:21 ocssdOUT.trc
-rw-r--r--. 1 grid
oinstall 5 Aug 10 13:18 ocssd.pid
-rw-r--r--. 1
root root 10379 Aug 10 13:21
octssdOUT.trc
-rw-r--r--. 1 root
root 5 Aug 10 13:21
octssd.pid
-rw-r--r--. 1 root root
68150 Aug 10 13:18 ohasd_cssdagent_rootOUT.trc
-rw-r--r--. 1 root
root 5 Aug 10 13:18
ohasd_cssdagent_root.pid
-rw-r--r--. 1 root
root 68498 Aug 10 13:18
ohasd_cssdmonitor_rootOUT.trc
-rw-r--r--. 1 root
root 5 Aug 10 13:18
ohasd_cssdmonitor_root.pid
-rw-r--r--. 1 grid oinstall
22910 Aug 10 13:39 ohasd_oraagent_gridOUT.trc
-rw-r--r--. 1 grid
oinstall 5 Aug 10 13:17
ohasd_oraagent_grid.pid
-rw-r--r--. 1 root
root 11049 Aug 10 13:17
ohasd_orarootagent_rootOUT.trc
-rw-r--r--. 1 root
root 5 Aug 10 13:17
ohasd_orarootagent_root.pid
-rw-r--r--. 1 root
root 10680 Aug 10 13:17
ohasdOUT.trc
-rw-r--r--. 1 root
root 5 Aug 10 13:17
ohasd.pid
-rw-r--r--. 1 root root
11518 Aug 10 13:39 osysmondOUT.trc
-rw-r--r--. 1 root
root 5 Aug 10 13:18
osysmond.pid
[root@ol7ora19r1][/u01/app/oracle/crsdata/ol7ora19r1/output]$ mv /u01/app/oracle/crsdata/ol7ora19r1/output /u01/app/oracle/crsdata/ol7ora19r1/output.bak
[root@ol7ora19r1][/u01/app/oracle/crsdata/ol7ora19r1/output]$
ls -l /u01/app/oracle/crsdata/ol7ora19r1/ | grep output.bak
drwxrwxrwt. 2 grid oinstall 4096 Jun 3
12:55 output.bak
[root@ol7ora19r1][/u01/app/oracle/crsdata/ol7ora19r1]$ mkdir -p
/u01/app/oracle/crsdata/ol7ora19r1/output
[root@ol7ora19r1][/u01/app/oracle/crsdata/ol7ora19r1]$
chown grid:oinstall
/u01/app/oracle/crsdata/ol7ora19r1/output
[root@ol7ora19r1][/u01/app/oracle/crsdata/ol7ora19r1]$
chmod 1777
/u01/app/oracle/crsdata/ol7ora19r1/output
[root@ol7ora19r1][/u01/app/oracle/crsdata/ol7ora19r1]$
ls -l /u01/app/oracle/crsdata/ol7ora19r1/ | grep
output
drwxrwxrwt. 2 grid oinstall 6 Aug 10 13:50
output
drwxrwxrwt. 2 grid oinstall 4096 Jun 3 12:55
output.bak
3-2. 소켓 파일 삭제
[root@ol7ora19r1][/root]$ cd
/tmp/.oracle/
[root@ol7ora19r1][/tmp/.oracle]$ ls -l | wc
-l
1
--> 해당 위치는 현재
파일이 없음 (ls -l | wc -l 명령으로 1이 나오면 파일이 없는 것임)
[root@ol7ora19r1][/tmp/.oracle]$ cd
/var/tmp/.oracle/
[root@ol7ora19r1][/var/tmp/.oracle]$ ls
-l | wc -l
61
[root@ol7ora19r1][/var/tmp/.oracle]$ cd
/usr/tmp/.oracle/
[root@ol7ora19r1][/usr/tmp/.oracle]$ ls -l | wc
-l
61
[root@ol7ora19r1][/usr/tmp/.oracle]$ rm
-f /var/tmp/.oracle/*
[root@ol7ora19r1][/usr/tmp/.oracle]$ rm
-f /usr/tmp/.oracle/*
3-3. rootcrs.sh -init 명령 수행
[root@ol7ora19r1][/root]$ cd
$GRID_HOME/crs/install
[root@ol7ora19r1][/u01/app/19c/grid/crs/install]$
./rootcrs.sh -init
Using configuration parameter file:
/u01/app/19c/grid/crs/install/crsconfig_params
The log of current session can
be found at:
/u01/app/oracle/crsdata/ol7ora19r1/crsconfig/crsinit_ol7ora19r1_2025-08-10_01-57-21PM.log
3-4. grid 및 oracle 엔진 모두 relink all 작업
--grid 엔진
relink all 작업
[+ASM1:grid@ol7ora19r1][/home/grid]$ echo
$GRID_HOME
/u01/app/19c/grid
[+ASM1:grid@ol7ora19r1][/home/grid]$ cd
$GRID_HOME/bin
[+ASM1:grid@ol7ora19r1][/u01/app/19c/grid/bin]$ ./relink
all
The Oracle home in which you are
running this relinking tool does not
have proper write permissions. Please
run this relink script as the same
user who owns the Oracle home and ensure
that the Oracle home has the
permissions from the original
installation.
If this is a Grid Infrastructure home, please refer to
the
documentation for the proper steps to relink and apply oneoff
patches.
--> 여기서 이러한 메시지가 나옴 (rootcrs.sh
-unlock 작업만 해주면 안되는걸로 판단)
--아래와 같이
root os user로 rootcrs.sh -prepatch 해줌
[root@ol7ora19r1][/root]$ cd
$GRID_HOME/crs/install
[root@ol7ora19r1][/u01/app/19c/grid/crs/install]$
./rootcrs.sh -prepatch
Using configuration parameter file:
/u01/app/19c/grid/crs/install/crsconfig_params
The log of current session can
be found at:
/u01/app/oracle/crsdata/ol7ora19r1/crsconfig/crs_prepatch_apply_inplace_ol7ora19r1_2025-08-10_02-00-38PM.log
Oracle
Clusterware active version on the cluster is [19.0.0.0.0]. The cluster upgrade
state is [NORMAL]. The cluster active patch level is [2119256259].
2025/08/10
14:02:29 CLSRSC-4012: Shutting down Oracle Trace File Analyzer (TFA)
Collector.
2025/08/10 14:02:41 CLSRSC-4013: Successfully shut down Oracle
Trace File Analyzer (TFA) Collector.
2025/08/10 14:02:46 CLSRSC-347:
Successfully unlock /u01/app/19c/grid
2025/08/10 14:02:48 CLSRSC-671:
Pre-patch steps for patching GI home successfully completed.
--다시
relink all 시도
[+ASM1:grid@ol7ora19r1][/u01/app/19c/grid/bin]$ ./relink
all
writing relink log to:
/u01/app/19c/grid/install/relinkActions2025-08-10_02-03-38PM.log
[+ASM1:grid@ol7ora19r1][/u01/app/19c/grid/bin]$ echo
$?
0
--> grid 엔진
relink all 성공함
--oracle
엔진 relink all 작업
[ORA19R1:oracle@ol7ora19r1][/home/oracle]$ cd
$ORACLE_HOME/bin
[ORA19R1:oracle@ol7ora19r1][/u01/app/oracle/product/19c/db_1/bin]$
./relink all
writing relink log to:
/u01/app/oracle/product/19c/db_1/install/relinkActions2025-08-10_02-05-53PM.log
--> oracle 엔진 relink all 성공함
3-5. oracle 및 grid 엔진 특정 바이너리의 권한을
변경
[root@ol7ora19r1][/root]$ cd
$GRID_HOME/rdbms/install
[root@ol7ora19r1][/u01/app/19c/grid/rdbms/install]$
cat ./rootadd_rdbms.sh
#!/bin/sh
ORACLE_HOME=/u01/app/19c/grid
CHOWN=/bin/chown
CHMOD=/bin/chmod
RM=/bin/rm
AWK=/bin/awk
ECHO=/bin/echo
CP=/bin/cp
#
# check for zero
UID
#
RUID=`/usr/bin/id|$AWK -F\( '{print $1}'|$AWK -F= '{print
$2}'`
if [ $RUID -ne 0 ];then
$ECHO "You must be logged in as user
with UID as zero (e.g. root user) to run root.sh."
$ECHO "Log in as
user with UID as zero (e.g. root user) and restart root.sh execution."
exit 1
fi
if [ -f $ORACLE_HOME/bin/oradism ];
then
$CHOWN root
$ORACLE_HOME/bin/oradism
$CHMOD 4750
$ORACLE_HOME/bin/oradism
fi
# remove backup copy
if [ -f
$ORACLE_HOME/bin/oradism.old ];
then
$RM -f
$ORACLE_HOME/bin/oradism.old
fi
# copy extjobo to extjob if it doesn''t
exist
if [ ! -f $ORACLE_HOME/bin/extjob -a -f $ORACLE_HOME/bin/extjobo ];
then
$CP -p $ORACLE_HOME/bin/extjobo
$ORACLE_HOME/bin/extjob
fi
if [ -f $ORACLE_HOME/bin/extjob ];
then
$CHOWN root
$ORACLE_HOME/bin/extjob
$CHMOD 4750
$ORACLE_HOME/bin/extjob
fi
if [ -f
$ORACLE_HOME/rdbms/admin/externaljob.ora ];
then
$CHOWN root
$ORACLE_HOME/rdbms/admin/externaljob.ora
$CHMOD 640
$ORACLE_HOME/rdbms/admin/externaljob.ora
fi
# properly setup job
scheduler switch user executable
if [ -f $ORACLE_HOME/bin/jssu ];
then
$CHOWN root
$ORACLE_HOME/bin/jssu
$CHMOD 4750
$ORACLE_HOME/bin/jssu
fi
# Bug#25068882: properly set up extproc
executable
if [ -f $ORACLE_HOME/bin/extproc ];
then
$CHMOD g+s
$ORACLE_HOME/bin/extproc
fi
# remove backup copy
if [ -f
$ORACLE_HOME/rdbms/admin/externaljob.ora.orig ];
then
$RM -f
$ORACLE_HOME/rdbms/admin/externaljob.ora.orig
fi
# tighten permissions on
$ORACLE_HOME/scheduler/wallet
if [ -d $ORACLE_HOME/scheduler/wallet ];
then
$CHMOD 0700
$ORACLE_HOME/scheduler/wallet
fi
[root@ol7ora19r1][/u01/app/19c/grid/rdbms/install]$
[root@ol7ora19r1][/u01/app/19c/grid/rdbms/install]$
./rootadd_rdbms.sh
--> root 소유의 특정 권한을 가져야할 파일에
대한 권한 작업을 수행함
[root@ol7ora19r1][/root]$ cd
$ORACLE_HOME/rdbms/install
[root@ol7ora19r1][/u01/app/oracle/product/19c/db_1/rdbms/install]$
cat ./rootadd_rdbms.sh
#!/bin/sh
ORACLE_HOME=/u01/app/oracle/product/19c/db_1
CHOWN=/bin/chown
CHMOD=/bin/chmod
RM=/bin/rm
AWK=/bin/awk
ECHO=/bin/echo
CP=/bin/cp
#
# check for zero
UID
#
RUID=`/usr/bin/id|$AWK -F\( '{print $1}'|$AWK -F= '{print
$2}'`
if [ $RUID -ne 0 ];then
$ECHO "You must be logged in as user
with UID as zero (e.g. root user) to run root.sh."
$ECHO "Log in as
user with UID as zero (e.g. root user) and restart root.sh execution."
exit 1
fi
if [ -f $ORACLE_HOME/bin/oradism ];
then
$CHOWN root
$ORACLE_HOME/bin/oradism
$CHMOD 4750
$ORACLE_HOME/bin/oradism
fi
# remove backup copy
if [ -f
$ORACLE_HOME/bin/oradism.old ];
then
$RM -f
$ORACLE_HOME/bin/oradism.old
fi
# copy extjobo to extjob if it doesn''t
exist
if [ ! -f $ORACLE_HOME/bin/extjob -a -f $ORACLE_HOME/bin/extjobo ];
then
$CP -p $ORACLE_HOME/bin/extjobo
$ORACLE_HOME/bin/extjob
fi
if [ -f $ORACLE_HOME/bin/extjob ];
then
$CHOWN root
$ORACLE_HOME/bin/extjob
$CHMOD 4750
$ORACLE_HOME/bin/extjob
fi
if [ -f
$ORACLE_HOME/rdbms/admin/externaljob.ora ];
then
$CHOWN root
$ORACLE_HOME/rdbms/admin/externaljob.ora
$CHMOD 640
$ORACLE_HOME/rdbms/admin/externaljob.ora
fi
# properly setup job
scheduler switch user executable
if [ -f $ORACLE_HOME/bin/jssu ];
then
$CHOWN root
$ORACLE_HOME/bin/jssu
$CHMOD 4750
$ORACLE_HOME/bin/jssu
fi
# Bug#25068882: properly set up extproc
executable
if [ -f $ORACLE_HOME/bin/extproc ];
then
$CHMOD g+s
$ORACLE_HOME/bin/extproc
fi
# remove backup copy
if [ -f
$ORACLE_HOME/rdbms/admin/externaljob.ora.orig ];
then
$RM -f
$ORACLE_HOME/rdbms/admin/externaljob.ora.orig
fi
# tighten permissions on
$ORACLE_HOME/scheduler/wallet
if [ -d $ORACLE_HOME/scheduler/wallet ];
then
$CHMOD 0700
$ORACLE_HOME/scheduler/wallet
fi
[root@ol7ora19r1][/u01/app/oracle/product/19c/db_1/rdbms/install]$ ./rootadd_rdbms.sh
[root@ol7ora19r1][/root]$ cd
/u01/app/oraInventory
[root@ol7ora19r1][/u01/app/oraInventory]$ cat
orainstRoot.sh
#!/bin/sh
AWK=/bin/awk
CHMOD=/bin/chmod
CHGRP=/bin/chgrp
CP=/bin/cp
ECHO=/bin/echo
MKDIR=/bin/mkdir
RUID=`/usr/bin/id|$AWK
-F\( '{print $1}'|$AWK -F\= '{print $2}'`
if [ ${RUID} != "0"
];then
$ECHO "This script must be executed as
root"
exit 1
fi
if [ ! -d "/etc" ]; then
$MKDIR -p
/etc;
fi
$CHMOD 755
/etc;
if [ -f "/u01/app/oraInventory/oraInst.loc" ]; then
$CP /u01/app/oraInventory/oraInst.loc
/etc/oraInst.loc;
$CHMOD 644
/etc/oraInst.loc
else
INVPTR=/etc/oraInst.loc
INVLOC=/u01/app/oraInventory
GRP=oinstall
PTRDIR="`dirname
$INVPTR`";
# Create the software inventory location pointer file
if [ ! -d
"$PTRDIR" ]; then
$MKDIR -p $PTRDIR;
fi
$ECHO "Creating the
Oracle inventory pointer file ($INVPTR)";
$ECHO
inventory_loc=$INVLOC > $INVPTR
$ECHO inst_group=$GRP
>> $INVPTR
chmod 644
$INVPTR
# Create the inventory directory if it doesn''t exist
if [
! -d "$INVLOC" ];then
$ECHO "Creating the Oracle inventory directory
($INVLOC)";
$MKDIR -p $INVLOC;
fi
fi
$ECHO "Changing
permissions of /u01/app/oraInventory.
Adding read,write permissions for
group.
Removing read,write,execute permissions for world.
";
$CHMOD -R g+rw,o-rwx
/u01/app/oraInventory;
if [ $? != 0 ]; then
$ECHO
"OUI-35086:WARNING: chmod of /u01/app/oraInventory
Adding read,write
permissions for group.
,Removing read,write,execute permissions for
world.
failed!";
fi
$ECHO "Changing groupname of
/u01/app/oraInventory to oinstall.";
$CHGRP -R oinstall
/u01/app/oraInventory;
if [ $? != 0 ]; then
$ECHO
"OUI-10057:WARNING: chgrp of /u01/app/oraInventory to oinstall
failed!";
fi
$ECHO "The execution of the script is
complete."
[root@ol7ora19r1][/u01/app/oraInventory]$
./orainstRoot.sh
Changing permissions of
/u01/app/oraInventory.
Adding read,write permissions for group.
Removing
read,write,execute permissions for world.
Changing groupname of
/u01/app/oraInventory to oinstall.
The execution of the script is
complete.
[root@ol7ora19r1][/root]$ cd
$ORACLE_HOME/
[root@ol7ora19r1][/u01/app/oracle/product/19c/db_1]$ cat
root.sh
#!/bin/sh
unset WAS_ROOTMACRO_CALL_MADE
.
/u01/app/oracle/product/19c/db_1/install/utl/rootmacro.sh "$@"
.
/u01/app/oracle/product/19c/db_1/install/utl/rootinstall.sh
/u01/app/oracle/product/19c/db_1/install/root_schagent.sh
#
# Root Actions related to
network
#
/u01/app/oracle/product/19c/db_1/network/install/sqlnet/setowner.sh
#
# Invoke standalone
rootadd_rdbms.sh
#
/u01/app/oracle/product/19c/db_1/rdbms/install/rootadd_rdbms.sh
/u01/app/oracle/product/19c/db_1/rdbms/install/rootadd_filemap.sh
[root@ol7ora19r1][/u01/app/oracle/product/19c/db_1]$
./root.sh
Performing root user operation.
The following environment variables are
set as:
ORACLE_OWNER= oracle
ORACLE_HOME= /u01/app/oracle/product/19c/db_1
Copying
dbhome to /usr/local/bin ...
Copying oraenv to /usr/local/bin
...
Copying coraenv to /usr/local/bin ...
Entries will be added to the /etc/oratab file
as needed by
Database Configuration Assistant when a database is
created
Finished running generic part of root script.
Now product-specific
root actions will be performed.
[root@ol7ora19r1][/u01/app/oracle/product/19c/db_1]$
--파일 권한 확인 (grid 엔진)
[root@ol7ora19r1][/u01/app/oracle/product/19c/db_1]$ ls -al
$GRID_HOME/bin/extjob
-rwsr-x---. 1 root oinstall 3035304 Aug
10 14:03 /u01/app/19c/grid/bin/extjob
[root@ol7ora19r1][/u01/app/oracle/product/19c/db_1]$ ls -al
$GRID_HOME/bin/jssu
-rwsr-x---. 1 root oinstall 2332824 Aug
10 14:03 /u01/app/19c/grid/bin/jssu
[root@ol7ora19r1][/u01/app/oracle/product/19c/db_1]$ ls -al
$GRID_HOME/bin/oradism
-rwsr-x---. 1 root oinstall 147848 Apr
17 2019 /u01/app/19c/grid/bin/oradism
[root@ol7ora19r1][/u01/app/oracle/product/19c/db_1]$ ls -al
$GRID_HOME/rdbms/admin/externaljob.ora
-rw-r-----. 1 root oinstall 1534 Dec
22 2005 /u01/app/19c/grid/rdbms/admin/externaljob.ora
[root@ol7ora19r1][/u01/app/oracle/product/19c/db_1]$ ls -al
$GRID_HOME/bin/oracle
-rwsr-s--x. 1 grid oinstall 439577944
Aug 10 14:04 /u01/app/19c/grid/bin/oracle
--파일 권한 확인
(oracle 엔진)
[root@ol7ora19r1][/u01/app/oracle/product/19c/db_1]$ ls -al
$ORACLE_HOME/bin/extjob
-rwsr-x---. 1 root oinstall 3035304 Aug
10 14:06 /u01/app/oracle/product/19c/db_1/bin/extjob
[root@ol7ora19r1][/u01/app/oracle/product/19c/db_1]$ ls -al
$ORACLE_HOME/bin/jssu
-rwsr-x---. 1 root oinstall 2332824 Aug
10 14:06 /u01/app/oracle/product/19c/db_1/bin/jssu
[root@ol7ora19r1][/u01/app/oracle/product/19c/db_1]$ ls -al
$ORACLE_HOME/bin/oradism
-rwsr-x---. 1 root oinstall 147848 Apr
17 2019 /u01/app/oracle/product/19c/db_1/bin/oradism
[root@ol7ora19r1][/u01/app/oracle/product/19c/db_1]$ ls -al
$ORACLE_HOME/rdbms/admin/externaljob.ora
-rw-r-----. 1 root oinstall 1534 Dec
22 2005
/u01/app/oracle/product/19c/db_1/rdbms/admin/externaljob.ora
[root@ol7ora19r1][/u01/app/oracle/product/19c/db_1]$ ls -al
$ORACLE_HOME/bin/oracle
-rwsr-s--x. 1 oracle asmadmin 462239912
Aug 10 14:06 /u01/app/oracle/product/19c/db_1/bin/oracle
3-6. grid 엔진 postpatch로
시작
[root@ol7ora19r1][/root]$ cd
$GRID_HOME/crs/install
[root@ol7ora19r1][/u01/app/19c/grid/crs/install]$
./rootcrs.sh -postpatch
Using configuration parameter file:
/u01/app/19c/grid/crs/install/crsconfig_params
The log of current session can
be found at:
/u01/app/oracle/crsdata/ol7ora19r1/crsconfig/crs_postpatch_apply_inplace_ol7ora19r1_2025-08-10_02-21-05PM.log
2025/08/10
14:21:16 CLSRSC-329: Replacing Clusterware entries in file
'oracle-ohasd.service'
Oracle Clusterware active version on the cluster is
[19.0.0.0.0]. The cluster upgrade state is [NORMAL]. The cluster active patch
level is [2119256259].
2025/08/10 14:23:57 CLSRSC-4015: Performing install or
upgrade action for Oracle Trace File Analyzer (TFA) Collector.
2025/08/10
14:24:01 CLSRSC-672: Post-patch steps for patching GI home successfully
completed.
[root@ol7ora19r1][/u01/app/19c/grid/crs/install]$ alias
csrt
alias csrt='crsctl stat res -t'
[root@ol7ora19r1][/u01/app/19c/grid/crs/install]$
csrt
--------------------------------------------------------------------------------
Name
Target State
Server
State
details
--------------------------------------------------------------------------------
Local
Resources
--------------------------------------------------------------------------------
ora.ACFS1.ACFS1_VOL1.advm
ONLINE ONLINE
ol7ora19r1
STABLE
ora.LISTENER.lsnr
ONLINE ONLINE
ol7ora19r1
STABLE
ora.acfs1.acfs1_vol1.acfs
ONLINE ONLINE
ol7ora19r1
mounted on
/acfs1_vo
l1,STABLE
ora.chad
ONLINE ONLINE
ol7ora19r1
STABLE
ora.net1.network
ONLINE ONLINE
ol7ora19r1
STABLE
ora.ons
ONLINE ONLINE
ol7ora19r1
STABLE
ora.proxy_advm
ONLINE ONLINE
ol7ora19r1
STABLE
--------------------------------------------------------------------------------
Cluster
Resources
--------------------------------------------------------------------------------
ora.ACFS1.dg(ora.asmgroup)
1 ONLINE
ONLINE
ol7ora19r1
STABLE
2 OFFLINE
OFFLINE
STABLE
ora.ASMNET1LSNR_ASM.lsnr(ora.asmgroup)
1 ONLINE
ONLINE
ol7ora19r1
STABLE
2 ONLINE
OFFLINE
STABLE
ora.CRS.dg(ora.asmgroup)
1 ONLINE
ONLINE
ol7ora19r1
STABLE
2 OFFLINE
OFFLINE
STABLE
ora.DATA1_NEW.dg(ora.asmgroup)
1 ONLINE
ONLINE
ol7ora19r1
STABLE
2 OFFLINE
OFFLINE
STABLE
ora.FRA1_NEW.dg(ora.asmgroup)
1 ONLINE
ONLINE
ol7ora19r1
STABLE
2 OFFLINE
OFFLINE
STABLE
ora.LISTENER_SCAN1.lsnr
1 ONLINE
ONLINE
ol7ora19r1
STABLE
ora.LISTENER_SCAN2.lsnr
1 ONLINE
ONLINE
ol7ora19r1
STABLE
ora.LISTENER_SCAN3.lsnr
1 ONLINE
ONLINE
ol7ora19r1
STABLE
ora.asm(ora.asmgroup)
1 ONLINE
ONLINE
ol7ora19r1
Started,STABLE
2 ONLINE
OFFLINE
STABLE
ora.asmnet1.asmnetwork(ora.asmgroup)
1 ONLINE
ONLINE
ol7ora19r1
STABLE
2 ONLINE
OFFLINE
STABLE
ora.cvu
1 ONLINE
ONLINE
ol7ora19r1
STABLE
ora.ol7ora19r1.vip
1 ONLINE
ONLINE
ol7ora19r1
STABLE
ora.ol7ora19r2.vip
1 ONLINE INTERMEDIATE
ol7ora19r1
FAILED OVER,STABLE
ora.ora19r.db
1 ONLINE
ONLINE
ol7ora19r1
Open,HOME=/u01/app/o
racle/product/19c/db
_1,STABLE
2 ONLINE
OFFLINE
STABLE
ora.qosmserver
1 ONLINE
ONLINE
ol7ora19r1
STABLE
ora.scan1.vip
1 ONLINE
ONLINE
ol7ora19r1
STABLE
ora.scan2.vip
1 ONLINE
ONLINE
ol7ora19r1
STABLE
ora.scan3.vip
1 ONLINE
ONLINE
ol7ora19r1
STABLE
--------------------------------------------------------------------------------
--> 1번 노드 완료
4. 2번 노드의 파일 권한 복구
4-1. $ORACLE_BASE/crsdata/호스트네임/output 위치 mv로 백업 후 output 디렉토리 생성
[root@ol7ora19r2][/root]$ echo
$ORACLE_BASE
/u01/app/oracle
[root@ol7ora19r2][/root]$ cd
$ORACLE_BASE/crsdata/ol7ora19r2/output
[root@ol7ora19r2][/u01/app/oracle/crsdata/ol7ora19r2/output]$
ls -l
total 860
-rw-r--r--. 1 grid oinstall 9936 Aug
10 13:39 crsd_jagent_gridOUT.trc
-rw-r--r--. 1 grid
oinstall 5 Aug 10 13:39
crsd_jagent_grid.pid
-rw-r--r--. 1 grid oinstall 19243 Aug
10 13:44 crsd_oraagent_gridOUT.trc
-rw-r--r--. 1 grid
oinstall 5 Aug 10 13:22
crsd_oraagent_grid.pid
-rw-r--r--. 1 oracle oinstall 30741 Aug 10 13:44
crsd_oraagent_oracleOUT.trc
-rw-r--r--. 1 oracle
oinstall 4 Aug 10 13:23
crsd_oraagent_oracle.pid
-rw-r--r--. 1 root
root 11780 Aug 10 13:22
crsd_orarootagent_rootOUT.trc
-rw-r--r--. 1 root
root 5 Aug 10 13:22
crsd_orarootagent_root.pid
-rw-r--r--. 1 root
root 63887 Aug 10 13:22 crsdOUT.trc
-rw-r--r--.
1 root root 5
Aug 10 13:22 crsd.pid
-rw-r--r--. 1 grid oinstall 11340 Aug
10 13:39 crsd_scriptagent_gridOUT.trc
-rw-r--r--. 1 grid
oinstall 5 Aug 10 13:39
crsd_scriptagent_grid.pid
-rw-r--r--. 1 root
root 241 Aug 10 13:21
crswrapexece.log
-rw-r--r--. 1 grid oinstall 13452 Aug 10
13:21 evmdOUT.trc
-rw-r--r--. 1 grid
oinstall 5 Aug 10 13:21 evmd.pid
-rw-r--r--. 1
grid oinstall 21616 Aug 10 13:44
evmloggerOUT.trc
-rw-r--r--. 1 grid
oinstall 5 Aug 10 13:21
evmlogger.pid
-rw-r--r--. 1 root
root 64574 Aug 10 13:22
gipcdOUT.trc
-rw-r--r--. 1 root
root 5 Aug 10 13:21
gipcd.pid
-rw-r--r--. 1 grid oinstall 16532 Aug 10 13:21
gpnpdOUT.trc
-rw-r--r--. 1 grid
oinstall 5 Aug 10 13:21 gpnpd.pid
-rw-r--r--. 1
grid oinstall 26428 Aug 10 13:44 mdnsdOUT.trc
-rw-r--r--. 1
grid oinstall 5 Aug 10 13:21
mdnsd.pid
-rw-r--r--. 1 grid oinstall 3424 Aug 10
13:22 ochadOUT.trc
-rw-r--r--. 1 grid oinstall 177332 Aug 10
13:39 ocssdOUT.trc
-rw-r--r--. 1 grid
oinstall 5 Aug 10 13:21 ocssd.pid
-rw-r--r--. 1
root root 12171 Aug 10 13:21
octssdOUT.trc
-rw-r--r--. 1 root
root 5 Aug 10 13:21
octssd.pid
-rw-r--r--. 1 root root
85775 Aug 10 13:21 ohasd_cssdagent_rootOUT.trc
-rw-r--r--. 1 root
root 5 Aug 10 13:21
ohasd_cssdagent_root.pid
-rw-r--r--. 1 root
root 86213 Aug 10 13:21
ohasd_cssdmonitor_rootOUT.trc
-rw-r--r--. 1 root
root 5 Aug 10 13:21
ohasd_cssdmonitor_root.pid
-rw-r--r--. 1 grid oinstall
30519 Aug 10 13:44 ohasd_oraagent_gridOUT.trc
-rw-r--r--. 1 grid
oinstall 5 Aug 10 13:21
ohasd_oraagent_grid.pid
-rw-r--r--. 1 root
root 14859 Aug 10 13:21
ohasd_orarootagent_rootOUT.trc
-rw-r--r--. 1 root
root 5 Aug 10 13:21
ohasd_orarootagent_root.pid
-rw-r--r--. 1 root
root 14239 Aug 10 13:21
ohasdOUT.trc
-rw-r--r--. 1 root
root 5 Aug 10 13:21
ohasd.pid
-rw-r--r--. 1 root root
14890 Aug 10 13:44 osysmondOUT.trc
-rw-r--r--. 1 root
root 5 Aug 10 13:21
osysmond.pid
[root@ol7ora19r2][/u01/app/oracle/crsdata/ol7ora19r2/output]$
mv /u01/app/oracle/crsdata/ol7ora19r2/output
/u01/app/oracle/crsdata/ol7ora19r2/output.bak
[root@ol7ora19r2][/u01/app/oracle/crsdata/ol7ora19r2/output]$
ls -l /u01/app/oracle/crsdata/ol7ora19r2/ | grep output.bak
drwxrwxrwt. 2 grid oinstall 4096 Jun 3
19:40 output.bak
[root@ol7ora19r2][/u01/app/oracle/crsdata/ol7ora19r2/output]$
mkdir -p
/u01/app/oracle/crsdata/ol7ora19r2/output
[root@ol7ora19r2][/u01/app/oracle/crsdata/ol7ora19r2/output]$
chown grid:oinstall
/u01/app/oracle/crsdata/ol7ora19r2/output
[root@ol7ora19r2][/u01/app/oracle/crsdata/ol7ora19r2/output]$
chmod 1777
/u01/app/oracle/crsdata/ol7ora19r2/output
[root@ol7ora19r2][/u01/app/oracle/crsdata/ol7ora19r2/output]$
ls -l /u01/app/oracle/crsdata/ol7ora19r2/ | grep
output
drwxrwxrwt. 2 grid oinstall 6 Aug 10 14:27
output
drwxrwxrwt. 2 grid oinstall 4096 Jun 3 19:40
output.bak
4-2. 소켓 파일 삭제
[root@ol7ora19r2][/root]$ cd
/tmp/.oracle/
[root@ol7ora19r2][/tmp/.oracle]$ ls -l | wc
-l
1
--> 해당 위치는 현재 파일이 없음
(ls -l | wc -l 명령으로 1이 나오면 파일이 없는 것임)
[root@ol7ora19r2][/tmp/.oracle]$ cd
/var/tmp/.oracle/
[root@ol7ora19r2][/var/tmp/.oracle]$ ls
-l | wc -l
61
[root@ol7ora19r2][/var/tmp/.oracle]$ cd
/usr/tmp/.oracle/
[root@ol7ora19r2][/usr/tmp/.oracle]$ ls -l | wc
-l
61
[root@ol7ora19r2][/usr/tmp/.oracle]$ rm
-f /var/tmp/.oracle/*
[root@ol7ora19r2][/usr/tmp/.oracle]$ rm
-f /usr/tmp/.oracle/*
4-3. rootcrs.sh -init 명령 수행
[root@ol7ora19r2][/root]$ cd
$GRID_HOME/crs/install
[root@ol7ora19r2][/u01/app/19c/grid/crs/install]$
./rootcrs.sh -init
Using configuration parameter file:
/u01/app/19c/grid/crs/install/crsconfig_params
The log of current session can
be found at:
/u01/app/oracle/crsdata/ol7ora19r2/crsconfig/crsinit_ol7ora19r2_2025-08-10_02-29-18PM.log
4-4. grid 및 oracle 엔진 모두 relink all
작업
--grid 엔진
relink all 작업
[+ASM1:grid@ol7ora19r2][/home/grid]$ echo
$GRID_HOME
/u01/app/19c/grid
[+ASM1:grid@ol7ora19r2][/home/grid]$ cd
$GRID_HOME/bin
[+ASM1:grid@ol7ora19r2][/u01/app/19c/grid/bin]$ ./relink
all
The Oracle home in which you are
running this relinking tool does not
have proper write permissions. Please
run this relink script as the same
user who owns the Oracle home and ensure
that the Oracle home has the
permissions from the original
installation.
If this is a Grid Infrastructure home, please refer to
the
documentation for the proper steps to relink and apply oneoff
patches.
--> 여기서 이러한 메시지가 나옴 (rootcrs.sh
-unlock 작업만 해주면 안되는걸로 판단)
--아래와 같이
root os user로 rootcrs.sh -prepatch 해줌
[root@ol7ora19r2][/root]$ cd
$GRID_HOME/crs/install
[root@ol7ora19r2][/u01/app/19c/grid/crs/install]$
./rootcrs.sh -prepatch
Using configuration parameter file:
/u01/app/19c/grid/crs/install/crsconfig_params
The log of current session can
be found at:
/u01/app/oracle/crsdata/ol7ora19r2/crsconfig/crs_prepatch_apply_inplace_ol7ora19r2_2025-08-10_02-30-28PM.log
Oracle
Clusterware active version on the cluster is [19.0.0.0.0]. The cluster upgrade
state is [NORMAL]. The cluster active patch level is [2119256259].
2025/08/10
14:32:13 CLSRSC-4012: Shutting down Oracle Trace File Analyzer (TFA)
Collector.
2025/08/10 14:32:23 CLSRSC-4013: Successfully shut down Oracle
Trace File Analyzer (TFA) Collector.
2025/08/10 14:32:26 CLSRSC-347:
Successfully unlock /u01/app/19c/grid
2025/08/10 14:32:28 CLSRSC-671:
Pre-patch steps for patching GI home successfully
completed.
--다시
relink all 시도
[+ASM2:grid@ol7ora19r2][/u01/app/19c/grid/bin]$ ./relink
all
writing relink log to:
/u01/app/19c/grid/install/relinkActions2025-08-10_02-32-59PM.log
[+ASM2:grid@ol7ora19r2][/u01/app/19c/grid/bin]$
echo $?
0
--> grid 엔진 relink all 성공함
--oracle
엔진 relink all 작업
[ORA19R2:oracle@ol7ora19r2][/home/oracle]$ cd
$ORACLE_HOME/bin
[ORA19R2:oracle@ol7ora19r2][/u01/app/oracle/product/19c/db_1/bin]$
./relink all
writing relink
log to:
/u01/app/oracle/product/19c/db_1/install/relinkActions2025-08-10_02-34-09PM.log
--> oracle 엔진 relink all 성공함
4-5. oracle 및 grid 엔진 특정 바이너리의 권한을
변경
[root@ol7ora19r2][/root]$ cd
$GRID_HOME/rdbms/install
[root@ol7ora19r2][/u01/app/19c/grid/rdbms/install]$
./rootadd_rdbms.sh
--> root 소유의 특정 권한을 가져야할 파일에 대한 권한 작업을 수행함
[root@ol7ora19r2][/root]$ cd
$GRID_HOME/rdbms/install
[root@ol7ora19r2][/u01/app/19c/grid/rdbms/install]$
./rootadd_rdbms.sh
[root@ol7ora19r2][/u01/app/19c/grid/rdbms/install]$ cd
$ORACLE_HOME/rdbms/install
[root@ol7ora19r2][/u01/app/oracle/product/19c/db_1/rdbms/install]$
./rootadd_rdbms.sh
[root@ol7ora19r2][/u01/app/oracle/product/19c/db_1/rdbms/install]$ cd
/u01/app/oraInventory
[root@ol7ora19r2][/u01/app/oraInventory]$
./orainstRoot.sh
Changing permissions of
/u01/app/oraInventory.
Adding read,write permissions for group.
Removing
read,write,execute permissions for world.
Changing groupname of
/u01/app/oraInventory to oinstall.
The execution of the script is
complete.
[root@ol7ora19r2][/u01/app/oraInventory]$ cd
$ORACLE_HOME/
[root@ol7ora19r2][/u01/app/oracle/product/19c/db_1]$
./root.sh
Performing root user
operation.
The following environment variables are
set as:
ORACLE_OWNER= oracle
ORACLE_HOME= /u01/app/oracle/product/19c/db_1
Copying
dbhome to /usr/local/bin ...
Copying oraenv to /usr/local/bin
...
Copying coraenv to /usr/local/bin ...
Entries will be added to the
/etc/oratab file as needed by
Database Configuration Assistant when a
database is created
Finished running generic part of root script.
Now
product-specific root actions will be performed.
--파일 권한 확인 (grid 엔진)
[root@ol7ora19r2][/u01/app/oracle/product/19c/db_1]$ ls -al
$GRID_HOME/bin/extjob
-rwsr-x---. 1 root oinstall 3035304 Aug
10 14:33 /u01/app/19c/grid/bin/extjob
[root@ol7ora19r2][/u01/app/oracle/product/19c/db_1]$ ls -al
$GRID_HOME/bin/jssu
-rwsr-x---. 1 root oinstall 2332824 Aug
10 14:33 /u01/app/19c/grid/bin/jssu
[root@ol7ora19r2][/u01/app/oracle/product/19c/db_1]$ ls -al
$GRID_HOME/bin/oradism
-rwsr-x---. 1 root oinstall 147848
Jun 3 02:36 /u01/app/19c/grid/bin/oradism
[root@ol7ora19r2][/u01/app/oracle/product/19c/db_1]$ ls -al
$GRID_HOME/rdbms/admin/externaljob.ora
-rw-r-----. 1 root oinstall 1534
Jun 3 02:35
/u01/app/19c/grid/rdbms/admin/externaljob.ora
[root@ol7ora19r2][/u01/app/oracle/product/19c/db_1]$ ls -al
$GRID_HOME/bin/oracle
-rwsr-s--x. 1 grid oinstall 439577944
Aug 10 14:33 /u01/app/19c/grid/bin/oracle
--파일 권한 확인 (oracle 엔진)
[root@ol7ora19r2][/u01/app/oracle/product/19c/db_1]$ ls -al
$ORACLE_HOME/bin/extjob
-rwsr-x---. 1 root oinstall 3035304 Aug
10 14:34 /u01/app/oracle/product/19c/db_1/bin/extjob
[root@ol7ora19r2][/u01/app/oracle/product/19c/db_1]$ ls -al
$ORACLE_HOME/bin/jssu
-rwsr-x---. 1 root oinstall 2332824 Aug
10 14:34 /u01/app/oracle/product/19c/db_1/bin/jssu
[root@ol7ora19r2][/u01/app/oracle/product/19c/db_1]$ ls -al
$ORACLE_HOME/bin/oradism
-rwsr-x---. 1 root oinstall 147848
Jun 3 12:13
/u01/app/oracle/product/19c/db_1/bin/oradism
[root@ol7ora19r2][/u01/app/oracle/product/19c/db_1]$ ls -al
$ORACLE_HOME/rdbms/admin/externaljob.ora
-rw-r-----. 1 root oinstall 1534
Jun 3 12:12
/u01/app/oracle/product/19c/db_1/rdbms/admin/externaljob.ora
[root@ol7ora19r2][/u01/app/oracle/product/19c/db_1]$ ls -al
$ORACLE_HOME/bin/oracle
-rwsr-s--x. 1 oracle asmadmin 462239912
Aug 10 14:34 /u01/app/oracle/product/19c/db_1/bin/oracle
4-6. grid 엔진 postpatch로 시작
[root@ol7ora19r2][/root]$ cd
$GRID_HOME/crs/install
[root@ol7ora19r2][/u01/app/19c/grid/crs/install]$
./rootcrs.sh -postpatch
Using configuration parameter file:
/u01/app/19c/grid/crs/install/crsconfig_params
The log of current session can
be found at:
/u01/app/oracle/crsdata/ol7ora19r2/crsconfig/crs_postpatch_apply_inplace_ol7ora19r2_2025-08-10_02-38-53PM.log
2025/08/10
14:39:08 CLSRSC-329: Replacing Clusterware entries in file
'oracle-ohasd.service'
Oracle Clusterware active version on the cluster is
[19.0.0.0.0]. The cluster upgrade state is [NORMAL]. The cluster active patch
level is [2119256259].
2025/08/10 14:41:44 CLSRSC-4015: Performing install or
upgrade action for Oracle Trace File Analyzer (TFA) Collector.
2025/08/10
14:41:46 CLSRSC-672: Post-patch steps for patching GI home successfully
completed.
2025/08/10 14:43:31 CLSRSC-4003: Successfully patched Oracle Trace
File Analyzer (TFA) Collector.
[root@ol7ora19r2][/u01/app/19c/grid/crs/install]$
csrt
--------------------------------------------------------------------------------
Name
Target State
Server
State
details
--------------------------------------------------------------------------------
Local
Resources
--------------------------------------------------------------------------------
ora.ACFS1.ACFS1_VOL1.advm
ONLINE ONLINE
ol7ora19r1
STABLE
ONLINE ONLINE
ol7ora19r2
STABLE
ora.LISTENER.lsnr
ONLINE ONLINE
ol7ora19r1
STABLE
ONLINE ONLINE
ol7ora19r2
STABLE
ora.acfs1.acfs1_vol1.acfs
ONLINE ONLINE
ol7ora19r1
mounted on
/acfs1_vo
l1,STABLE
ONLINE ONLINE
ol7ora19r2
mounted on
/acfs1_vo
l1,STABLE
ora.chad
ONLINE ONLINE
ol7ora19r1
STABLE
ONLINE ONLINE
ol7ora19r2
STABLE
ora.net1.network
ONLINE ONLINE
ol7ora19r1
STABLE
ONLINE ONLINE
ol7ora19r2
STABLE
ora.ons
ONLINE ONLINE
ol7ora19r1
STABLE
ONLINE ONLINE
ol7ora19r2
STABLE
ora.proxy_advm
ONLINE ONLINE
ol7ora19r1
STABLE
ONLINE ONLINE
ol7ora19r2
STABLE
--------------------------------------------------------------------------------
Cluster
Resources
--------------------------------------------------------------------------------
ora.ACFS1.dg(ora.asmgroup)
1 ONLINE
ONLINE
ol7ora19r1
STABLE
2 ONLINE
ONLINE
ol7ora19r2
STABLE
ora.ASMNET1LSNR_ASM.lsnr(ora.asmgroup)
1 ONLINE
ONLINE
ol7ora19r1
STABLE
2 ONLINE
ONLINE
ol7ora19r2
STABLE
ora.CRS.dg(ora.asmgroup)
1 ONLINE
ONLINE
ol7ora19r1
STABLE
2 ONLINE
ONLINE
ol7ora19r2
STABLE
ora.DATA1_NEW.dg(ora.asmgroup)
1 ONLINE
ONLINE
ol7ora19r1
STABLE
2 ONLINE
ONLINE
ol7ora19r2
STABLE
ora.FRA1_NEW.dg(ora.asmgroup)
1 ONLINE
ONLINE
ol7ora19r1
STABLE
2 ONLINE
ONLINE
ol7ora19r2
STABLE
ora.LISTENER_SCAN1.lsnr
1 ONLINE
ONLINE
ol7ora19r2
STABLE
ora.LISTENER_SCAN2.lsnr
1 ONLINE
ONLINE
ol7ora19r1
STABLE
ora.LISTENER_SCAN3.lsnr
1 ONLINE
ONLINE
ol7ora19r1
STABLE
ora.asm(ora.asmgroup)
1 ONLINE
ONLINE
ol7ora19r1
Started,STABLE
2 ONLINE
ONLINE
ol7ora19r2
Started,STABLE
ora.asmnet1.asmnetwork(ora.asmgroup)
1 ONLINE
ONLINE
ol7ora19r1
STABLE
2 ONLINE
ONLINE
ol7ora19r2
STABLE
ora.cvu
1 ONLINE
ONLINE
ol7ora19r1
STABLE
ora.ol7ora19r1.vip
1 ONLINE
ONLINE
ol7ora19r1
STABLE
ora.ol7ora19r2.vip
1 ONLINE
ONLINE
ol7ora19r2
STABLE
ora.ora19r.db
1 ONLINE
ONLINE
ol7ora19r1
Open,HOME=/u01/app/o
racle/product/19c/db
_1,STABLE
2 ONLINE
ONLINE
ol7ora19r2
Open,HOME=/u01/app/o
racle/product/19c/db
_1,STABLE
ora.qosmserver
1 ONLINE
ONLINE
ol7ora19r1
STABLE
ora.scan1.vip
1 ONLINE
ONLINE
ol7ora19r2
STABLE
ora.scan2.vip
1 ONLINE
ONLINE
ol7ora19r1
STABLE
ora.scan3.vip
1 ONLINE
ONLINE
ol7ora19r1
STABLE
--------------------------------------------------------------------------------
--> 2번 노드 완료
5. DB 리소스 재생성 (옵션)
[ORA19R1:oracle@ol7ora19r1][/home/oracle]$ srvctl stop database
-db ora19r
[ORA19R1:oracle@ol7ora19r1][/home/oracle]$ srvctl config database
-db ora19r
Database unique name: ORA19R
Database name:
Oracle home:
/u01/app/oracle/product/19c/db_1
Oracle user: oracle
Spfile:
+DATA1_NEW/ORA19R/PARAMETERFILE/spfile.270.1203101939
Password file:
+DATA1_NEW/ORA19R/PASSWORD/orapwora19r
Domain:
Start options: open
Stop
options: immediate
Database role: PRIMARY
Management policy:
AUTOMATIC
Server pools:
Disk Groups: DATA1_NEW,FRA1_NEW
Mount point
paths:
Services:
Type: RAC
Start concurrency:
Stop
concurrency:
OSDBA group: dba
OSOPER group: oper
Database instances:
ORA19R1,ORA19R2
Configured nodes: ol7ora19r1,ol7ora19r2
CSS critical:
no
CPU count: 0
Memory target: 0
Maximum memory: 0
Default network
number for database services:
Database is administrator
managed
ORA19R1:oracle@ol7ora19r1][/home/oracle]$ srvctl remove database -db
ora19r
Remove the database ora19r? (y/[n]) y
[ORA19R1:oracle@ol7ora19r1][/home/oracle]$ srvctl add database \
-db
ora19r \
-oraclehome $ORACLE_HOME \
-dbtype RAC \
-spfile
+DATA1_NEW/ORA19R/PARAMETERFILE/spfile.270.1203101939 \
-pwfile
+DATA1_NEW/ORA19R/PASSWORD/orapwora19r \
-startoption OPEN \
-stopoption
IMMEDIATE \
-diskgroup "DATA1_NEW,FRA1_NEW"
[ORA19R1:oracle@ol7ora19r1][/home/oracle]$ srvctl add instance -db ora19r
-i ORA19R1 -n ol7ora19r1
[ORA19R1:oracle@ol7ora19r1][/home/oracle]$ srvctl add instance -db ora19r
-i ORA19R2 -n ol7ora19r2
[ORA19R1:oracle@ol7ora19r1][/home/oracle]$ srvctl enable instance -db
ora19r -i ORA19R1
[ORA19R1:oracle@ol7ora19r1][/home/oracle]$ srvctl enable
instance -db ora19r -i ORA19R2
[ORA19R1:oracle@ol7ora19r1][/home/oracle]$
srvctl status instance -db ora19r -i ORA19R1
Instance ORA19R1 is not running on node
ol7ora19r1
[ORA19R1:oracle@ol7ora19r1][/home/oracle]$ srvctl status instance -db
ora19r -i ORA19R2
Instance ORA19R2 is not running on node
ol7ora19r2
[ORA19R1:oracle@ol7ora19r1][/home/oracle]$ srvctl start database -db ora19r
[ORA19R1:oracle@ol7ora19r1][/home/oracle]$
csrt
--------------------------------------------------------------------------------
Name
Target State
Server
State
details
--------------------------------------------------------------------------------
Local
Resources
--------------------------------------------------------------------------------
ora.ACFS1.ACFS1_VOL1.advm
ONLINE ONLINE
ol7ora19r1
STABLE
ONLINE ONLINE
ol7ora19r2
STABLE
ora.LISTENER.lsnr
ONLINE ONLINE
ol7ora19r1
STABLE
ONLINE ONLINE
ol7ora19r2
STABLE
ora.acfs1.acfs1_vol1.acfs
ONLINE ONLINE
ol7ora19r1
mounted on
/acfs1_vo
l1,STABLE
ONLINE ONLINE
ol7ora19r2
mounted on
/acfs1_vo
l1,STABLE
ora.chad
ONLINE ONLINE
ol7ora19r1
STABLE
ONLINE ONLINE
ol7ora19r2
STABLE
ora.net1.network
ONLINE ONLINE
ol7ora19r1
STABLE
ONLINE ONLINE
ol7ora19r2
STABLE
ora.ons
ONLINE ONLINE
ol7ora19r1
STABLE
ONLINE ONLINE
ol7ora19r2
STABLE
ora.proxy_advm
ONLINE ONLINE
ol7ora19r1
STABLE
ONLINE ONLINE
ol7ora19r2
STABLE
--------------------------------------------------------------------------------
Cluster
Resources
--------------------------------------------------------------------------------
ora.ACFS1.dg(ora.asmgroup)
1 ONLINE
ONLINE
ol7ora19r1
STABLE
2 ONLINE
ONLINE
ol7ora19r2
STABLE
ora.ASMNET1LSNR_ASM.lsnr(ora.asmgroup)
1 ONLINE
ONLINE
ol7ora19r1
STABLE
2 ONLINE
ONLINE
ol7ora19r2
STABLE
ora.CRS.dg(ora.asmgroup)
1 ONLINE
ONLINE
ol7ora19r1
STABLE
2 ONLINE
ONLINE
ol7ora19r2
STABLE
ora.DATA1_NEW.dg(ora.asmgroup)
1 ONLINE
ONLINE
ol7ora19r1
STABLE
2 ONLINE
ONLINE
ol7ora19r2
STABLE
ora.FRA1_NEW.dg(ora.asmgroup)
1 ONLINE
ONLINE
ol7ora19r1
STABLE
2 ONLINE
ONLINE
ol7ora19r2
STABLE
ora.LISTENER_SCAN1.lsnr
1 ONLINE
ONLINE
ol7ora19r2
STABLE
ora.LISTENER_SCAN2.lsnr
1 ONLINE
ONLINE
ol7ora19r1
STABLE
ora.LISTENER_SCAN3.lsnr
1 ONLINE
ONLINE
ol7ora19r1
STABLE
ora.asm(ora.asmgroup)
1 ONLINE
ONLINE
ol7ora19r1
Started,STABLE
2 ONLINE
ONLINE
ol7ora19r2
Started,STABLE
ora.asmnet1.asmnetwork(ora.asmgroup)
1 ONLINE
ONLINE
ol7ora19r1
STABLE
2 ONLINE
ONLINE
ol7ora19r2
STABLE
ora.cvu
1 ONLINE
ONLINE
ol7ora19r1
STABLE
ora.ol7ora19r1.vip
1 ONLINE
ONLINE
ol7ora19r1
STABLE
ora.ol7ora19r2.vip
1 ONLINE
ONLINE
ol7ora19r2
STABLE
ora.ora19r.db
1 ONLINE
ONLINE
ol7ora19r1
Open,HOME=/u01/app/o
racle/product/19c/db
_1,STABLE
2 ONLINE
ONLINE
ol7ora19r2
Open,HOME=/u01/app/o
racle/product/19c/db
_1,STABLE
ora.qosmserver
1 ONLINE
ONLINE
ol7ora19r1
STABLE
ora.scan1.vip
1 ONLINE
ONLINE
ol7ora19r2
STABLE
ora.scan2.vip
1 ONLINE
ONLINE
ol7ora19r1
STABLE
ora.scan3.vip
1 ONLINE
ONLINE
ol7ora19r1
STABLE
--------------------------------------------------------------------------------
--여기까지 일괄적으로 grid와 oracle 엔진의 권한을 바꾼 후 복구하는
작업을 테스트 해봄
--긴급으로 업무가 가능하도록 조치했지만 후추 RAC 재설치를 하는 것이 맞음
--(복구는 됐으나 어차피 한번 세팅하면 오래 쓸 시스템이니 당연히 재설치가
맞음)