2021. 10. 29. 22:57 오라클
Oracle 21c Read-only Home 테스트
Oracle 21c Read-only Home 테스트
Read-Only Home 이란?
18c 에 처음 소개된 개념이며, 읽기 전용 Oracle 홈을 사용하면 여러 서버에 자동으로 원활하게 배포할 수 있는 Oracle 소프트웨어를 쉽고 유연하며 소프트웨어 이미지 기반으로 배포할 수 있습니다. 읽기 전용 Oracle 홈은 또한 확장된 다운타임 없이 Oracle Database의 패치 및 업데이트를 가능하게 합니다. 패치는 단순히 정의된 위치에서 주어진 바이너리 세트를 교체하는 것을 의미하기 때문입니다.
21c 의 경우 parameter 화일 default 위치가 read-only home 때문에 아래와 같은 위치에 생성됨.
/oracle/app/oracle/dbs
/oracle/app/oracle/homes/OraDB21Home1/network/admin/
- S/W Only 로 engine 만 설치한 상태
- orabasetab 확인 Y 인 상태이면 , read-only home 이 활성화 되어 있는것임.
[ORA21C]oracle@:/oracle/app/oracle/product/21.0.0/dbhome_1/install# cat orabasetab
#orabasetab file is used to track Oracle Home associated with Oracle Base
/oracle/app/oracle/product/21.0.0/dbhome_1:/oracle/app/oracle:OraDB21Home1:Y:
[ORA21C]oracle@:/oracle/app/oracle/product/21.0.0/dbhome_1/bin# ./orabasehome
/oracle/app/oracle/homes/OraDB21Home1
[ORA21C]oracle@:/oracle/app/oracle/product/21.0.0/dbhome_1/bin# ./orabaseconfig
/oracle/app/oracle
- read-only home 을 비활성화 함.
[ORA21C]oracle@:/oracle/app/oracle/product/21.0.0/dbhome_1/bin# ./roohctl -disable
Disabling Read-Only Oracle home.
Update orabasetab file to disable Read-Only Oracle home.
Orabasetab file has been updated successfully.
Read-Only Oracle home has been disabled successfully.
Check the log file /oracle/app/oracle/cfgtoollogs/roohctl/roohctl-210928AM112828.log for more details.
- orabasetab 확인 Y->N 로 바뀌어 있음.
[ORA21C]oracle@:/oracle/app/oracle/product/21.0.0/dbhome_1/install# cat orabasetab
#orabasetab file is used to track Oracle Home associated with Oracle Base
/oracle/app/oracle/product/21.0.0/dbhome_1:/oracle/app/oracle:OraDB21Home1:N:
- - read-only home 을 다시 활성화 함.
[ORA21C]oracle@:/oracle/app/oracle/product/21.0.0/dbhome_1/bin# ./roohctl -enable
Enabling Read-Only Oracle home.
Update orabasetab file to enable Read-Only Oracle home.
Orabasetab file has been updated successfully.
Create bootstrap directories for Read-Only Oracle home.
Bootstrap directories have been created successfully.
Bootstrap files have been processed successfully.
Bootstrap files have been processed successfully.
Read-Only Oracle home has been enabled successfully.
Check the log file /oracle/app/oracle/cfgtoollogs/roohctl/roohctl-210928AM113155.log for more details.
- orabasetab 확인 N->Y 로 바뀌어 있음.
[ORA21C]oracle@:/oracle/app/oracle/product/21.0.0/dbhome_1/install# cat orabasetab
#orabasetab file is used to track Oracle Home associated with Oracle Base
/oracle/app/oracle/product/21.0.0/dbhome_1:/oracle/app/oracle:OraDB21Home1:Y:
- Listener 와 DB를 start 하고 테스트
[ORA21C]oracle@:/home/oracle# lsnrctl start
LSNRCTL for Linux: Version 21.0.0.0.0 - Production on 28-SEP-2021 11:33:59
Copyright (c) 1991, 2021, Oracle. All rights reserved.
Starting /oracle/app/oracle/product/21.0.0/dbhome_1/bin/tnslsnr: please wait...
TNSLSNR for Linux: Version 21.0.0.0.0 - Production
System parameter file is /oracle/app/oracle/homes/OraDB21Home1/network/admin/listener.ora
Log messages written to /oracle/app/oracle/diag/tnslsnr/ora21c/listener/alert/log.xml
Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=ora21c)(PORT=1521)))
Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1521)))
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=ora21c)(PORT=1521)))
STATUS of the LISTENER
------------------------
Alias LISTENER
Version TNSLSNR for Linux: Version 21.0.0.0.0 - Production
Start Date 28-SEP-2021 11:33:59
Uptime 0 days 0 hr. 0 min. 0 sec
Trace Level off
Security ON: Local OS Authentication
SNMP OFF
Listener Parameter File /oracle/app/oracle/homes/OraDB21Home1/network/admin/listener.ora
Listener Log File /oracle/app/oracle/diag/tnslsnr/ora21c/listener/alert/log.xml
Listening Endpoints Summary...
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=ora21c)(PORT=1521)))
(DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1521)))
The listener supports no services
The command completed successfully
SQL> startup
SQL> show parameter pfile
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
spfile string /oracle/app/oracle/dbs/spfileORA21C.ora
[ORA21C]oracle@:/oracle/app/oracle/product/21.0.0/dbhome_1/bin# ./roohctl -disable
Disabling Read-Only Oracle home.
Update orabasetab file to disable Read-Only Oracle home.
Orabasetab file has been updated successfully.
Read-Only Oracle home has been disabled successfully.
Check the log file /oracle/app/oracle/cfgtoollogs/roohctl/roohctl-210928PM125107.log for more details.
[ORA21C]oracle@:/oracle/app/oracle/product/21.0.0/dbhome_1/bin# ./roohctl -enable
Enabling Read-Only Oracle home.
Cannot enable Read-Only Oracle home in a configured Oracle home.
[ORA21C]oracle@:/oracle/app/oracle/product/21.0.0/dbhome_1/install# cat orabasetab
#orabasetab file is used to track Oracle Home associated with Oracle Base
/oracle/app/oracle/product/21.0.0/dbhome_1:/oracle/app/oracle:OraDB21Home1:N:
* 테스트 결과
=> 21c는 read-only home이 Default 이므로 disable 했을 경우는 Configuration 화일 및 listener.ora 화일 등을 기존과 같은 $ORACLE_HOME/dbs 또는 $ORACLE_HOME/network/admin 아래로 생성하고 기동해 주어야 함.
=> binary 만 있는 상태에서 read-only home 을 disable <-> enable 하는 것은 허용
=> listener 및 DB 가 생성된 상태에서 한번 Disable 한 read-only home 을 다시 enable 하는 것은 허용되지 않음
=> 웬만하면 아직 21c는 쓰지 않는 것이 좋겠다!!