진단 파일과 ADRCI
Alert Log와 Trace File이 저장되는 ADR의 위치를 DIAGNOSTIC_DEST와 V$DIAG_INFO로 확인하고 ADRCI를 실행하는 방법
#핵심 요약
ADR(Automatic Diagnostic Repository)은 Alert Log, Trace File 같은 진단 데이터를 담는 디렉터리 구조이며 데이터베이스 밖에 있어 DB가 내려가 있어도 볼 수 있음
ADR 위치는 초기화 파라미터 DIAGNOSTIC_DEST가 정함
예전의 BACKGROUND_DUMP_DEST, USER_DUMP_DEST는 더 이상 권장되지 않음
V$DIAG_INFO는 현재 인스턴스의 주요 ADR 위치를 보여 줌
ADRCI는 ADR을 다루는 명령줄 도구임
#개념과 동작 원리
| 구성 요소 | 내용 |
|---|---|
| ADR | 데이터베이스 밖에 저장되는 진단 데이터 디렉터리 구조 DB가 내려가 있어도 문제 진단에 쓸 수 있음 |
| Alert Log | 메시지와 오류를 시간 순으로 기록한 XML 파일 ADR 홈마다 하나씩 있고 데이터베이스, ASM, 리스너, Clusterware처럼 구성 요소별로 따로 있음 |
| Trace File | 서버 프로세스와 백그라운드 프로세스가 각자 쓰는 진단 기록 프로세스가 사는 동안 주기적으로 갱신됨 |
ADR과 FRA(빠른 복구 영역)는 서로 다른 저장 영역임
#필수 명령어 또는 SQL
#ADR 위치 확인
SELECT name, value FROM v$diag_info;
SELECT value FROM v$diag_info WHERE name = 'Diag Trace';
SHOW PARAMETER diagnostic_dest결과 해석:
공식 문서의 예시에서 V$DIAG_INFO의 NAME에는 ADR Base, ADR Home, Diag Trace, Diag Alert 등이 있음Diag Trace는 Trace File이 쌓이는 디렉터리임
현재 세션의 Trace File 경로는 Default Trace File 행에 있음(서버 프로세스와 백그라운드 프로세스 참조)
#ADRCI 실행
adrci결과 해석:
실습에서는 실행만 적었고 ADRCI 안에서 쓰는 명령은 없음
#사용 조건과 주의사항
ADRCI의 Alert Log 보기, 오래된 진단 데이터 정리 명령은 기재 없음
정리 명령은 파일을 지우므로 공식 문서를 확인한 뒤 써야 함