Dynamic Performance View

오라클 데이터베이스를 운영하다 보면 시스템 내부에서 지금 이 순간 어떤 일이 발생하고 있는지 즉시 파악해야 할 때가 많습니다. 이럴 때 가장 많이 활용되는 것이 바로 다이나믹 퍼포먼스 뷰(Dynamic Performance View)입니다.
실무에서는 대부분 다이나믹 퍼포먼스 뷰에 데이터를 직접 조회해서 분석하는 것이 아닌, DPM(Database Performance Monitoring) 솔루션들을 사용하곤하는데, 어떤 솔루션이든 공통적으로 참조하는 데이터의 출처는 다이나믹 퍼포먼스뷰 입니다.
시스템의 실시간 모니터링
오라클은 시스템의 성능과 동작 상태를 1분 1초 단위로 모니터링할 수 있도록 전용 뷰를 제공합니다. 이를 통해 엔지니어는 현재 어떤 세션이 자원을 많이 쓰는지, 혹은 어떤 대기 이벤트가 발생하고 있는지 즉각적으로 파악하여 트러블슈팅을 진행할 수 있습니다.
읽기 일관성(Read Consistency)의 미보장
일반적인 테이블은 쿼리를 시작한 시점의 데이터를 보장하지만, 다이나믹 뷰는 다릅니다. 이 뷰는 SGA 메모리 영역에서 데이터를 실시간으로 읽어오기 때문에 데이터가 시시각각 변합니다. 따라서 읽기 일관성이 보장되지 않으며, 찰나의 순간을 포착하는 "스냅샷"과 같은 데이터라는 점을 유의해야 합니다.
보안 관리
이 뷰들은 데이터베이스의 심장부와 같은 정보를 담고 있습니다. 보안과 관리의 일관성을 위해 모든 다이나믹 퍼포먼스 뷰는 SYS 유저가 소유하며 관리합니다. 일반 사용자가 이 정보를 조회하기 위해서는 적절한 권한 부여가 반드시 선행되어야 합니다.
세션(Session) 관련 V$ 뷰
현재 접속된 세션의 상태, 대기 이벤트, 활동 여부 등을 확인할 때 사용합니다.
V$SESSION : 세션 기본 정보
V$SESSION_WAIT : 세션 대기 상태 정보
V$SESSION_EVENT : 세션별 이벤트 통계 정보
ex) ACTIVE 상태의 세션 조회 예시
FROM V$SESSION
WHERE STATUS = 'ACTIVE';
데이터 파일 및 로그 파일 상태 관련 V$ 뷰
데이터베이스를 구성하는 파일들의 상태를 확인할 수 있습니다.
V$DATAFILE : 데이터 파일 정보
V$TEMPFILE : 임시 파일 정보
V$CONTROLFILE : 컨트롤 파일 정보
V$LOGFILE : 리두 로그 파일 정보
작업 진행 상황(Long Operation) 관련 V$ 뷰
시간이 오래 걸리는 작업의 진행률과 남은 시간을 확인할 수 있다.
(예: 백업, 대량 테이블 스캔, 인덱스 생성 등)
V$SESSION_LONGOPS
FROM V$SESSION_LONGOPS
WHERE TIME_REMAINING > 0;
Lock 관련 V$ 뷰
데이터베이스 Lock 상태 및 Lock으로 인한 대기 상황을 분석할 때 사용합니다.
V$LOCK
: 데이터베이스 내 Lock 정보 확인
V$SESSION_WAIT
: 세션의 대기 상태 확인
: Lock과 관련된 대기 이벤트 분석 가능
백업 상태 관련 V$ 뷰
RMAN 및 백업 작업의 상태를 확인할 때 사용합니다.
V$BACKUP
V$BACKUP_COPY_DETAILS
V$BACKUP_SET
메모리 사용 및 할당 관련 V$ 뷰
SGA와 PGA의 사용량 및 동적 메모리 조정 상태를 확인할 수 있습니다.
V$SGA
: SGA(System Global Area) 전체 메모리 크기
V$PGASTAT
: PGA(Program Global Area) 통계 정보
V$MEMORY_DYNAMIC_COMPONENTS
: 동적으로 조정되는 메모리 구성 요소 정보
시스템 및 세션 파라미터 관련 V$ 뷰
DB 설정 값과 통계 정보를 확인할 때 사용합니다.
V$PARAMETER : 초기화 파라미터 정보
V$SYSTEM_PARAMETER : 시스템 파라미터 정보
V$SESSTAT : 세션 통계 정보
SQL 실행 관련 V$ 뷰
실행 중이거나 실행된 SQL과 실행 계획을 분석할 때 사용합니다.
V$SQL
V$SQLAREA
V$SQL_PLAN
통계 및 Metric 관련 V$ 뷰
시스템 성능 지표 및 통계 정보를 제공합니다.
V$SYSSTAT : 시스템 통계 정보
V$SESSMETRIC : 세션 단위 성능 지표
V$METRIC : 실시간 성능 메트릭
모든 다이나믹 퍼포먼스 뷰 확인
현재 DB에 존재하는 모든 V$ 뷰(내부적으로는 Fixed Table)를 확인할 수 있습니다.
FROM V$FIXED_TABLE;
Data Dictionary

오라클 데이터베이스 운영의 근간이 되는 데이터 딕셔너리(Data Dictionary)에 대해 깊이 있게 다뤄보려 합니다. 흔히 '메타데이터의 집합'이라고 표현하지만, 실무자 입장에서는 "DB의 모든 자산이 기록된 마스터 장부"라고 이해하는 것이 더 정확합니다.
데이터 딕셔너리는 데이터베이스 그 자체에 대한 정보를 담고 있는 읽기 전용(Read-only) 테이블과 뷰의 집합입니다.
보관 내용: 테이블, 인덱스, 뷰 등 모든 객체의 정의 정보, 사용자 권한, 제약 조건, 공간 할당 정보 등을 포함합니다.
관리 주체: 사용자가 직접 수정할 수 없으며, DDL명령이 수행될 때 오라클에 의해 자동으로 갱신됩니다.
저장 위치: 데이터 딕셔너리는 메모리가 아닌 디스크의 SYSTEM 테이블스페이스에 물리적으로 저장됩니다.
접근 시점: 앞서 배운 기동 단계 중, 데이터 파일이 물리적으로 열리는 OPEN 단계가 되어야만 조회가 가능합니다. 이는 인스턴스만 떠 있어도 볼 수 있는 V$ 뷰와 가장 큰 차이점입니다.

'데이터베이스' 카테고리의 다른 글
| [데이터베이스] DBA의 필수 역량: 솔루션 없이 AWR 스냅샷으로 DB 병목 지점 추적하기 (0) | 2026.02.03 |
|---|---|
| [데이터베이스] DML Lock의 이중 구조와 Enqueue 대기 메커니즘 심층 분석 (0) | 2026.01.30 |
| [데이터베이스] NOMOUNT에서 OPEN까지: 오라클 인스턴스 기동 단계별 장애 포인트 체크 (0) | 2026.01.29 |
| [데이터베이스] 오라클 물리 저장소의 핵심: Control File부터 데이터 블록 체인화 (2) (0) | 2026.01.29 |
| [데이터베이스] 오라클 물리 저장소의 핵심: Control File부터 데이터 블록 체인화 (1) (0) | 2026.01.29 |