OS환경 : Oracle Linux 8.4 (64bit)
DB 환경 : Oracle Database 19.3.0.0
방법 : 오라클 19c 재기동시 발생하는 wait event
테스트 중 ash 를 보다가 재기동시에 특정 이벤트가 발생하는것을 보고 어떤 이벤트인지 궁금해서 찾아봄
db 재기동
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
SQL> shutdown immediate
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL> startup
ORACLE instance started.
Total System Global Area 2214590664 bytes
Fixed Size 8898760 bytes
Variable Size 2147483648 bytes
Database Buffers 50331648 bytes
Redo Buffers 7876608 bytes
Database mounted.
Database opened.
|
재기동 직후 ash 확인
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
|
SQL>
col wait_class for a12
col event for a50
select * from (
select
WAIT_CLASS ,
EVENT,
count(sample_time) as EST_SECS_IN_WAIT
from v$active_session_history
where sample_time between sysdate - interval '1' hour and sysdate
group by WAIT_CLASS,EVENT
order by count(sample_time) desc
)
where rownum <6;
WAIT_CLASS EVENT EST_SECS_IN_WAIT
------------ -------------------------------------------------- ----------------
6
Other oracle thread bootstrap 2
User I/O external table read 2
Other os thread creation 2
Other control file heartbeat 2
|
최상단은 NULL이고 나머지 4개가 나옴(oracle thread bootstrap, external table read, os thread creation, control file heartbeat)
각각 어떤 이벤트인지 확인해봄
oracle thread bootstrap
이 이벤트는 주로 멀티 스레드 환경에서 쓰레드가 부트스트랩(시작) 과정을 거치는 동안 발생함
이 과정에서 오라클은 필요한 시스템 리소스를 확보하고, 쓰레드의 실행을 위한 준비 작업을 수행함
이 이벤트가 발생하는 동안, 쓰레드는 대기 상태가 될 수 있으며, 이는 일반적으로 시스템의 성능에 영향을 주지 않는다고함
하지만 이 이벤트가 지속적으로 발생하거나, 대기 시간이 길어질 경우 시스템의 성능에 영향을 줄 수 있음
운영중 이 이벤트가 발생하면, 일반적으로 시스템 리소스를 증가시키거나, 애플리케이션의 동시성을 조정하여 해결할 수 있음
os thread creation
이 이벤트는 새로운 OS 스레드가 생성될 때 발생함
오라클은 여러 프로세스와 스레드를 사용하여 데이터베이스 서비스를 제공함
주로 백그라운드 프로세스나 사용자 세션 등이 시작될 때 관련 작업이 수행되는 동안 발생할 수 있다고함
control file heartbeat
이 이벤트는 주로 컨트롤 파일이 여전히 활성 상태이며 주기적으로 갱신 중임을 나타냄
이를 통해서 데이터베이스가 정상적으로 작동하고 있는지를 확인할 수 있음
일반적으로 데이터베이스가 정상적으로 작동하는 동안 주기적으로 발생함
이 이벤트는 일반적으로 데이터베이스 성능에 영향을 주지 않는다고 함
external table read
이 이벤트는 external table을 읽을때 발생하는 이벤트임
db 기동시 alert log 를 보면 patch 정보들이 길게 나오는걸 볼수 있음
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
$ vi alert.log
2023-12-08T11:09:11.557277+09:00
===========================================================
Dumping current patch information
===========================================================
Patch Id: 29517242
Patch Description: Database Release Update : 19.3.0.0.190416 (29517242)
Patch Apply Time: 2019-04-18T16:21:17+09:00
Bugs Fixed: 14735102,19697993,20313356,21965541,25806201,25883179,25986062,
26476244,26611353,26872233,27369515,27423500,27666312,27710072,27846298,
27957203,28064977,28072567,28129791,28181021,28210681,28279456,28313275,
28350595,28371123,28379065,28431445,28463226,28489419,28502773,28513333,
28534475,28561704,28569897,28572533,28572544,28587723,28593682,28594086,
.
.
|
이 패치 정보들을 불러 올때 external table을 이용해 불러와 이 이벤트가 발생하는것으로 보임
external table 정보 조회시 opatch 관련 테이블을 확인할 수 있음
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
SQL>
set lines 200 pages 1000
col owner for a10
col table_name for a20
col directory_name for a20
col directory_path for a50
col location for a15
select det.owner, det.table_name, dd.directory_name, dd.directory_path, del.location
from dba_external_tables det, dba_directories dd, dba_external_locations del
where 1=1
and det.default_directory_name = dd.directory_name
and det.default_directory_name = del.directory_name
and det.owner = 'SYS';
OWNER TABLE_NAME DIRECTORY_NAME DIRECTORY_PATH LOCATION
---------- -------------------- -------------------- -------------------------------------------------- ---------------
SYS OPATCH_XML_INV OPATCH_SCRIPT_DIR /ORA19/app/oracle/product/19.0.0/db_1/QOpatch qopiprep.bat
|
참조 :
https://docs.oracle.com/cd/E19504-01/802-5938/6i9lnfe69/index.html
https://forums.oracle.com/ords/apexds/post/control-file-heartbeat-8590
'ORACLE > Performance Tuning ' 카테고리의 다른 글
오라클 19c 하나의 쿼리블록에 힌트 여러개 작성시 나타나는 현상 (0) | 2024.01.21 |
---|---|
오라클 19c 10053 trace 자동수행 스크립트 (0) | 2023.12.14 |
오라클 19c ash 뷰 데이터 1분마다 백업하는 스크립트 (0) | 2023.12.07 |
오라클 19c 10046 trace 및 tkprof 자동수행 스크립트 (0) | 2023.12.07 |
오라클 19c not in 절에 null 허용 컬럼 관련 테스트 (0) | 2023.09.21 |