mingming

Oracle - System View 본문

새싹 하이브리드 클라우드/Database

Oracle - System View

mingming_96 2023. 10. 21. 21:12

시스템 뷰 ( System view ) 

데이터베이스 관리 및 모니터링을 위해 제공되는 특수한 데이터베이스 뷰 입니다. 데이터베이스의 메타데이터와 시스템 정보에 접근할 수 있도록 설계되어 있습니다.  시스템 뷰는 데이터 딕셔너리 뷰 , 동적 성능 뷰 두 가지로 구분됩니다.
구분 내용 이름
데이터 딕셔너리 뷰 데이터 딕셔너리 뷰의 데이터 딕셔너리 테이블은 시스템 테이블스페이스에 저장되며 해당 데이터베이스에 존재하는 오브젝트 및 데이터베이스 관련 정보에 대한 내용을 조회할 수 있는 뷰 입니다.   DBA_
ALL_
동적 성능 뷰  메모리 상태 및 현재 세션에 대한 정보를 확인할 수 있는 뷰 입니다.  V$

 

데이터 딕셔너리 뷰 와 뷰

구분 내용
데이터 딕셔너리 뷰 데이터 베이스 생성 시 생성합니다. 데이터베이스 생성 절차를 확인해 보면 catalog.sql 이라는 스크립트를 수행하는 단계가 존재하며, 해당 스크립트를 수행하게 되면 데이터 딕셔너리 뷰를 생성합니다. 
오라클의 오브젝트 중 하나로 실제 저장공간을 소유하지 않으며 뷰 정의에 대한 내용만을 데이터 딕셔너리에 저장합니다. 뷰는 테이블을 조회하는 SQL을 오라클 오브젝트로 생성하여 해당 뷰를 조회하면 뷰에 사용된 SQL이 수행되면서 대상 테이블을 자동으로 조회하게 한다. 

 

데이터 딕셔너리 뷰의 구분

구분 내용 예제
DBA_ 해당 데이터베이스에 존재하는 모든 내용 조회 DBA_TABLES
ALL_ 해당 유저에게 권한이 존재하는 모든 내용 조회 ALL_TABLES
USER_ 해당 유저가소유자로 되어 있는 모든 내용 조회  USER_TABLES

 

데이터 딕셔너리 뷰의 종류

오브젝트 관련 데이터 딕셔너리 뷰 

데이터 딕셔너리 뷰 내용
DBA_OBJECTS 데이터베이스에 존재하는 모든 오브젝트 정보를 확인할 수 있습니다.
DBA_SEGMENTS 데이터베이스에 존재하는 모든 테이블 목록 및 테이블에 관련된 정보를 확인할 수 있습니다.
DBA_TABLES 데이터베이스에 존재하는 모든 테이블 목록 및 테이블에 관련된 정보를 확인할 수 있습니다. 
DBA_INDEXES 데이터베이스에 존재하는 모든 인덱스 목록 및 인덱스에 관련정보를 확인할 수 있습니다. 
DBA_TAB_PARTITIONS 데이터베이스에 파티션 테이블이 존재한다면 해당 데이터 딕셔너리 뷰에서 조회가능합니다. 
DBA_TAB_SUBPARTITIONS 데이터베이스에 존재하는 파티션 중 결합 파티션 테이블이 존재한다면 해당데이터 딕셔너리 뷰에서 조회가 가능합니다. 
DBA_VIEWS 데이터베이스에 존재하는 모든 뷰 목록 및 뷰에관련된 정보를 확인할 수 있습니다.  
DBA_TRIGGERS 데이터베이스에 존재하는 모든 트리거 목록 및 트리거에 관련된 정보를 확인할 수 있습니다.
DBA_SYNONYMS 데이터베이스에존재하는 모든 동의어 목록 및 동의어에 관련된 정보를 확인할 수 있습니다.  
DBA_DB_LINKS 데이터베이스에 존재하는 모든 데이터베이스 링크 정보를 확인할 수 있습니다.

 

오브젝트와 세그먼트

오브젝트 중 스토리지 영역을 가지는 오브젝트를 세그먼트라고 합니다. 테이블과 인덱스는 오브젝트이면서 세그먼트이지만 뷰와 시퀀스 등은 스토리지 영역이 없이 정의만 저장되므로 단지 오브젝트에 해당됩니다. 

 

유저 및 권한 관련 데이터 딕셔너리 뷰 

데이터 딕셔너리 뷰 내용
DBA_USERS 데이터베이스에 존재하는 모든 유저에 대한 정보 조회가 가능합니다.
DBA_TS_QUOTAS 데이터베이스유저 별로 각 테이블스페이스에 할당된 공간을 확인할 수 있으며 MAX_BYTES 컬럼이 1의 값이라면 해당 테이블스페이스에 대해 공간 사용에대한 제한이 없다는 것을 의미합니다.      
DBA_TAB_PRIVS 유저 또는 롤 별로 테이블에 대한 권한 부여가 현황을 확인할 수 있습니다.
DBA_SYS_PRIVS 유저 또는 롤 별로 부여된 시스템 권한을 확인할 수있습니다.  
DBA_ROLES 데이터베이스에 존재하는 모든 롤을 확인할 수 있습니다.
DBA_ROLES_PRIVS 유저 및 롤에 할당된 롤을 확인할 수 있습니다. 

 

스토리지 관련 데이터 딕셔너리 뷰 

데이터 딕셔너리 뷰 내용
DBA_TABLESPACES 데이터베이스에 존재하는 모든 테이블스페이스 조회 가능합니다.
DBA_SEGMENTS 데이터베이스에 존재하는 오브젝트 중 스토리지를 가지는 모든 세그먼트를 조회할 수 있습니다.
DBA_EXTENTS 각 세그먼트로 할당된 익스텐트에 대해 조회 가능합니다
DBA_DATA_FILES 각각의 테이블스페이스를 구성하는 데이터 파일의 정보를 확인할 수 있습니다.
DBA_TEMP_FILES 지역 관리 임시 테이블스페이스에 대한 임시 파일 정보를 확인할 수 있는 데이터 딕셔너리 뷰 입니다.     
DBA_FREE_SPACE 테이블스페이스별로 사용 가능 여유 공간을 확인할 수 있는 데이터 딕셔너리 뷰 입니다. 

 

기타 데이터 딕셔너리 뷰 

데이터 딕셔너리 뷰 내용
DBA_TAB_COLS 테이블을 구성하는 모든 컬럼 정보를 확인할 수 있습니다.
DBA_IND_COLUMNS 테이블에 생성되어 있는 모든 인덱스의 컬럼 구성 정보를 확인할 수 있습니다.
DBA_PART_KEY_COLUMNS 파티션 테이블에 대해 파티션 키 컬럼을 확인할 수 있습니다.
DBA_TAB_PARTITIONS 파티션 테이블에 대한 HIGH VALUE, 파티션 저장 영역 등에 대한 정보를 확인할 수 있습니다. 
DBA_PART_TABLES 테이블의 파티션 형태(LIST, HASH, RANGE)를 확인할 수 있습니다.

 

동적 성능 뷰 

세션 관련 동적 성능 뷰 

돟적 성능 뷰  내용
V$TRANSACTION 현재 언두 데이터를 사용하는 모든 작업에 대해 실시간 조회가 가능합니다. 
V$SESSION 데이터베이스에 접속한 운영 체제 프로세스 별로 하나의 로우씩 추출합니다.
V$SQL 수행된 SQL을 조회할 수 있습니다.
V$SQL_PLAN 각각의 SQL에 대한 실행계획을 조회할 수 있습니다.
## 오늘 머신에서 로그인한 세션 정보 
SELECT * FROM V$SESSION WHERE machine = 'Machine_name' and logon_time > TRUNC(SYSDATE);
SELECT USERNAME, STATE, MACHINE, LOGON_TIME 
FROM V$SESSION 
WHERE USERNAME = 'SYSTEM' or USERNAME = 'SYS';

SELECT sid, ctime FROM V$LOCK WHERE block > 0;

 

대기 이벤트 관련 동적 성능 뷰

동적 성능 뷰  내용
V$SESSION_WAIT 현재 세션에서 발생하고 있는 대기 이벤트를 확인할 수 있습니다.
V$EVENT_NAME 동적 성능 뷰는 아니지만 동적 성능 뷰에서발생하는 모든 이벤트에 대한 정보를 저장하고 있는 뷰 입니다. 
V$SESSION_EVENT 현재 데이터베이스에 접속해있는 세션들의 대기 이벤트 값들에 대한 누적 값을 확인할 수 있습니다. 
V$SYSTEM_EVENT 오라클 데이터베이스 기동이후 대기 이벤트데 대한 모든 누적 값을 확인할 수 있는 동적 성능 뷰 입니다. 

 

기타 동적 성능 뷰

동적 성능 뷰 내용
V$DATABASE 해당 데이터베이스 생성 시간 및 LOG_MODE(Archive Log Mode또는 No Archive Log Mode) 등 기본적인 정보 제공합니다.
V$INSTANCE STARTUP TIME, 인스턴스 이름, HOSTNAME 등 인스턴스 기본 정보를 제공합니다.
V$SGASTAT 데이터베이스의 모든 메모리 정보를 확인할 수 있는 뷰 입니다.
V$BACKUP 데이터베이스의 모든 데이터 파일에 대해 백업 여부를 알 수 있습니다.
V$LOCK 데이터베이스에 수행중인 모든 락 정보를 알 수 있습니다.
V$PARAMETER 데이터베이스에 설정된 파라미터 값을 확인할 수 있습니다.

'새싹 하이브리드 클라우드 > Database' 카테고리의 다른 글

Oracle - Redo Log File & Archive Log File  (0) 2023.10.22
Oracle - 필수 파일  (0) 2023.10.21
Oracle - 엑세스 절차  (2) 2023.10.17
Oracle - 메모리 관리  (2) 2023.10.17
Oracle DB Architecture - Process  (0) 2023.10.12