리스너 로그 정리
DB CAFE
- DBA { Oracle DBA 명령어 > DBA 초급 과정 > DBA 고급 과정 }
- 튜닝 { 오라클 튜닝 목록 }
- 모델링 { 데이터 모델링 가이드 }
1 리스너 로그 위치[편집]
- 10g 이하 $ORACLE_HOME/network/log 디렉토리
- 11g 이상 $ORACLE_BASE/diag/tnslsnr/'hostname'/listener/trace
listener.log 사이즈가 확인
1.1 리스너 로그 확인[편집]
[oracle@ora ~]$ lsnrctl status .. 중략 ... Listener Parameter File /app/oracle/product/12.2.0/db_1/network/admin/listener.ora Listener Log File /app/oracle/diag/tnslsnr/ora/listener/alert/log.xml ...
- lsnrctl 명렁어 실행
$ lsnrctl
- 구성된 리스너명이 Listener 가 아닌 경우, 지정
lsnrctl> set current_listener <리스너명>
- listener.log 파일에 로그 기록 정지
lsnrctl> set log_status off
- 삭제, 백업 작업
- listener.log 파일에 로그 기록.
lsnrctl> set log_status on set log_status off 로 변경하고, 파일 제거 또는 백업하고 listener.log 파일 생성 (생성하지 않아도 자동 생성)
11g 이상에서는 $ORACLE_BASE/diag/tnslsnr/'hostname'/listener/alert 에 log_xxxx.xml파일도 생기는데 이 로그는 ADRCI 용 로그임. 주기적으로 파일을 묶어서 백업해두는식으로 관리한다. 예)
- 로그 경로로 이동
[oracle@ora ~]$ cd $ORACLE_BASE/diag/tnslsnr/'hostname'/listener/alert [oracle@ora ~]$ ls log_1801.xml log_1802.xml .... 중략 ...
- 로그 백업용 폴더 생성
[oracle@ora ~]$ mkdir -p log_backup
- 백업용 폴더로 일부 로그 이동
[oracle@ora ~]$ mv log_18* log_backup
- 백업용 폴더 압축
[oracle@ora ~]$ tar -cvf - log_18*.* |gzip > log_18_backup.gzip 로 압축해서 다른곳에 백업해둔다.
1.2 mtime 옵션 사용 백업[편집]
- 로그 백업용 폴더 생성
[oracle@ora ~]$ mkdir -p log_20180520
- 백업용 폴더로 일부 로그 이동(30일 지난 파일 이동)
[oracle@ora ~]$ find . -name "*.xml" -mtime +30 -exec mv {} /oracle/diag/tnslsnr/orcl/listener/alert/log_20180520/ \;
- 백업용 폴더 압축
[oracle@ora ~]$ tar -zcvf log_20180520 log_20180520
1.3 trace 로그 대용량시 처리[편집]
- $ORACLE_BASE/diag/tnslsnr/'hostname'/listener/trace 에 로그가 용량이 커졌을 때
- 리스너 로그 이름 변경
[oracle@ora trace]$ cp -av listener.log listener.log.20180520
- /dev/null 을 리스너 로그에 덮어씌우기
[oracle@ora trace]$ cp /dev/null listener.log
- 이름 변경한 리스너 로그 압축
[oracle@ora trace]$ gzip listener.log.20180520