[ADRCI] 11g 데이타베이스 문제 원인 분석을 위한 정보 수집 방법


Oracle 11g 부터 Alert.log 와 trace file 은 새로운 형식으로 생성이 되며, 이는 ADR (Automatic Diagnotic Repository) 에 생성이 된다.

본 문서에서는 Database 에 심각한 에러가 발생한 경우, ADRCI 명령어를 이용하여 에러를 확인하고 관련된 alert.log 및 trace file 을 오라클 고객지원센터로 전송하는 방법에 대해서 설명한다.

IPS 사용법

ORACLE 11g 는 problem (Database 에서 발생한 에러코드)과 incident (에러가 발생한 기록)에 관련된 trace file 들을 자동으로 수집해주는 기능을 제공한다.

이 기능을 IPS (Incident Packaging Service) 라고 하며, 인터페이스로 GUI 환경과 ADRCI command 를 제공한다.
Database 에 발생한 모든 심각한 에러들은 각각의 incident 를 생성한다.

IPS 를 통해서 생성된 압축 파일은 에러에 대한 alert.log file, 모든 trace file 과 진단 정보를 포함하고 있기 때문에, 해당 error 에 대한 정보수집을 간편히 수행할 수 있다.

Database 의 에러 확인 및 관련 file을 오라클 고객지원센터로 전송하는 방법 :

1. Database 에서 발생한 심각한 에러 발생
SQL> select * from atab;
select * from atab
*
ERROR at line 1:
ORA-01578: ORACLE data block corrupted (file # 6, block # 11)
ORA-01110: data file 6: ‘/opt/oracle/oradata/db11g/tt.dbf’

2. ADR과 Alert.log 에서 에러를 확인한다.
ADR에서 에러를 확인하기 위하여 11g 환경의 OS prompt에서 adrci를 실행한다.
*%] adrci*
ADR 홈 경로를 확인한다.
adrci> show home
–> 모든 ADR HOME 을 보여준다. 확인하고자 하는 ADR HOME 을 지정한다.
adrci> set homepath <ADR HOME>
에러 코드를 problem 이라고 하며, 이를 확인하기 위해서 다음을 실행한다.
adrci> show problem
ADR Home = /opt/oracle/diag/rdbms/db11g/db11g:
*************************************************************************
PROBLEM_ID PROBLEM_KEY LAST_INCIDENT LASTINC_TIME
– – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – –
1 ORA 1578 18104 2009-06-01 22:06:19.501207 +10:00
1 rows fetched
Database 에 문제가 되고 있는 에러 코드를 확인할 수 있다.
이 중, 분석이 필요한 에러코드에 대하여 압축파일을 생성할 수 있다.

3. 분석이 필요한 에러의 발생 기록을 확인한다.
에러의 발생 기록들은 Incident 라고 하며, 모든 incident 는 Alert.log 에 기록된다.
각각의 incident 는 유일한 incident ID 를 가진다.
ADR 에서 ‘show incident’ 명령을 수행하여 에러 발생 기록을 확인할 수가 있으며,
에러에 대한 problem key를 확인하기 위해서는 ‘show problem’ 을 수행한다.
adrci> show incident -p “problem_key=’ORA 1578′”
ADR Home = /opt/oracle/diag/rdbms/db11g/db11g:
*************************************************************************
INCIDENT_ID PROBLEM_KEY CREATE_TIME
– – – – – – – – – – – – – – – – – – – – – – – – – – – –
18147 ORA 1578 2009-06-01 22:02:08.805002 +10:00
동일한 problem에 대한 incidnet는 여러 건이 발생할 수 있다.

4. IPS (incident packaging service) 를 수행하여 alert.log , trace file 및 diag 정보에 대한 압축 파일 생성.
압축 파일을 생성하기 위해서는 특정 경로를 포함한 ‘IPS pack’ 명령을 사용한다.
다음의 예는 incident 관련 file들을 /tmp directory 에 압축 파일로 생성하는 방법이다.
adrci> ips pack incident 18147 in /tmp
Generated package 9 in file /tmp/ORA1578_20090602113045_COM_1.zip, mode complete
IPS pack 의 예제)
ips pack problem 100 in /tmp
— problem id 100 에 관련된 trace file 들을 /tmp directory 에 압축파일로 생성한다.
ips pack incident 6439 in /tmp
— incident id 6439 에 관련된 trace file 들을 /tmp directory 에 압축파일로 생성한다.
ips pack problemkey “ORA 1578”
— problem_key ‘ORA 1578’ 를 가지는 모든 problem 에 관련된 trace file 들을 현재 directory 에 압축파일로 생성한다.
ips pack seconds 8
— 최근 8 초 이내에 발생한 incident 에 대한 압축 파일을 생성한다.
ips pack time ‘2007-05-01 10:00:00.00’ to ‘2007-05-01 23:00:00.00’
— 특정 시간대의 incident 에 대한 압축파일을 생성한다.
‘IPS pack’ 명령은 ‘IPC create’ 와 ‘IPS generage’ 명령을 일괄적으로 수행할 수 있는 명령이다.
이와 같이 생성된 압축 파일을 SR (service request)을 통해 오라클 고객지원센터로 전송하면 된다.

(My Oracle Support 접속 필요)

참고자료 :
DOC ID : 443529.1 11g Quick Steps to Package and Send Critical Error Diagnostic Information to Support (Video)

DOC ID: 738732.1 ADR Different Methods to Create IPS Package


Comments

comments

haisins

오라클 DBA 박용석 입니다. haisins@gmail.com 으로 문의 주세요.

댓글 남기기

이메일은 공개되지 않습니다. 필수 입력창은 * 로 표시되어 있습니다