상세 컨텐츠

본문 제목

Oracle DBA의 alert.log로그관리법 알아보자

Oracle DBMS

by 3학년 1반 민군 2020. 12. 1. 10:32

본문

안녕하세요

오늘은 DBA라면 일상적으로 확인하는 로그들에 대해 관리하는 방법에 대해 소개하려 합니다.

 

오늘 얘기할 로그(log)의 개념은

어떤 행위가 발생함에 따라 기록을 남기는 파일을 말합니다.

 

Oracle DBMS가 기동중일때 역시 다양한 로그가 발생하고 이를 확인, 점검하는것도 DBA의 역할중 하나입니다.

Oracle DBMS에서 발생하는 로그는 alert, adump audit, bdump trace, udump trace, listener log, archive log file 등이 있습니다.

 

오늘은 alert.log 로그관리방법에 대해 알아보려합니다.

 

기업마다 로그관리를 위한 정책이 있을수도 있고, 없다면 DBA가 정책을 만들어 관리하는 것도 좋습니다.

 

정책사항을 매번 동일하게 준수하기위해 쉘을 작성하는것이 효과적입니다.

 

쉘을 작성할때는 오탈자에 대해 주의해야하며 반드시 테스트를 거친 후 적용해야합니다.

 

테스트를 진행 후 쉘을 자동화하여 관리 할 수 있습니다.

더보기

alert.log 입니다.

alert.log는 alert<SID>.log로 Oracle DBMS에서 발생하는 모든 기록을 Text화 하여 저장합니다.

그렇기 때문에 영구적으로 보관하고 이를 월별로 압축하여 관리하는것이 좋습니다.

1. alert.log 관리를 위한 경로 생성

mkdir -p /backup/alert

 

2. alert.log  경로 확인

alert.log의 기본 생성경로는 $ORACLE_BASE/diag/rdbms/testdb/TESTDB/trace/alert_TESTDB.log 입니다.

(11g 기준)

 

오라클 설치시 생성한 $ORACLE_BASE/아래에 위치합니다.

 

SQL명령으로 확인이 가능합니다.

SQL> SHOW PARAMETER USER_DUMP_DEST

또는

SQL> SHOW PARAMETER BACKGROUND_DUMP_DEST

 

3. alert.log경로 이동 및 alert.log 확인

cd $ORACLE_BASE/diag/rdbms/<SID>/<SID>/trace

vi alert<SID>.log

 

4. 로그백업(월별관리)

cp $ORACLE_BASE/diag/rdbms/<SID>/<SID>/trace/alert*.log /backup/alert/alert<SID>_20200713.log

 

5. 로그 압축

gzip /backup/alert/alert<SID>_20200713.log

 

위의 1~5번까지 내용을 자동화 할 수 있습니다.

자동화 예시)

매달 1일 새벽 4시에 동작할 수 있도록 설정

crontab 설정시 상단에 언제 어떻게 실행되는지 작성하면 좋다



cd  /backup/alert

vi alertbackup.sh

####################################

############alert log backup############

#crontab 0 4 1 * * /backup/alert/alertbackup.sh#



nDate='date +%Y%m%d'

cp $ORACLE_BASE/diag/rdbms/<SID>/<SID>/trace/alert*.log /backup/alert/alert<SID>_$nDate.log



gzip /backup/alert/alert<SID>_$nDate.log

 

관련글 더보기

댓글 영역