OS환경 : Windows Server 2019 Pro (64bit)
DB 환경 : Oracle Database 19.3.0.0
방법 : 오라클 19c Windows 환경에서 아카이브 로그 정리 방법(archive log)
윈도우 환경에서 rman 을 이용해 아카이브 로그파일을 정리하는 방법을 설명함
vm 현재날짜 : 2021년 11월 02일
기존 아카이브로그 확인
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
|
cmd> rman target /
복구 관리자: Release 19.0.0.0.0 - Production on 화 11월 2 15:26:13 2021
Version 19.3.0.0.0
Copyright (c) 1982, 2019, Oracle and/or its affiliates. All rights reserved.
대상 데이터베이스에 접속됨: ORCL(DBID=1614224227)
RMAN> list archivelog all;
db_unique_name ORCL을(를) 가진 데이터베이스에 대한 아카이브된 로그 복사본 목록
=====================================================================
키 스레드 시퀀스 S Low 시간
------- ---- ------- - --------
1 1 8 A 21/10/27
이름: C:\APP\ORACLE\ARCH\ORCL_8_1_1086443491.ARC
2 1 9 A 21/10/27
이름: C:\APP\ORACLE\ARCH\ORCL_9_1_1086443491.ARC
3 1 10 A 21/10/27
이름: C:\APP\ORACLE\ARCH\ORCL_10_1_1086443491.ARC
4 1 11 A 21/10/27
이름: C:\APP\ORACLE\ARCH\ORCL_11_1_1086443491.ARC
5 1 12 A 21/10/28
이름: C:\APP\ORACLE\ARCH\ORCL_12_1_1086443491.ARC
6 1 13 A 21/10/28
이름: C:\APP\ORACLE\ARCH\ORCL_13_1_1086443491.ARC
7 1 14 A 21/10/29
이름: C:\APP\ORACLE\ARCH\ORCL_14_1_1086443491.ARC
8 1 15 A 21/10/30
이름: C:\APP\ORACLE\ARCH\ORCL_15_1_1086443491.ARC
9 1 16 A 21/10/30
이름: C:\APP\ORACLE\ARCH\ORCL_16_1_1086443491.ARC
10 1 17 A 21/10/31
이름: C:\APP\ORACLE\ARCH\ORCL_17_1_1086443491.ARC
11 1 18 A 21/11/01
이름: C:\APP\ORACLE\ARCH\ORCL_18_1_1086443491.ARC
12 1 19 A 21/11/02
이름: C:\APP\ORACLE\ARCH\ORCL_19_1_1086443491.ARC
|
3일 지난 아카이브로그 파일 확인
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
|
RMAN> list ARCHIVELOG UNTIL TIME 'SYSDATE-3';
db_unique_name ORCL을(를) 가진 데이터베이스에 대한 아카이브된 로그 복사본 목록
=====================================================================
키 스레드 시퀀스 S Low 시간
------- ---- ------- - --------
1 1 8 A 21/10/27
이름: C:\APP\ORACLE\ARCH\ORCL_8_1_1086443491.ARC
2 1 9 A 21/10/27
이름: C:\APP\ORACLE\ARCH\ORCL_9_1_1086443491.ARC
3 1 10 A 21/10/27
이름: C:\APP\ORACLE\ARCH\ORCL_10_1_1086443491.ARC
4 1 11 A 21/10/27
이름: C:\APP\ORACLE\ARCH\ORCL_11_1_1086443491.ARC
5 1 12 A 21/10/28
이름: C:\APP\ORACLE\ARCH\ORCL_12_1_1086443491.ARC
6 1 13 A 21/10/28
이름: C:\APP\ORACLE\ARCH\ORCL_13_1_1086443491.ARC
7 1 14 A 21/10/29
이름: C:\APP\ORACLE\ARCH\ORCL_14_1_1086443491.ARC
8 1 15 A 21/10/30
이름: C:\APP\ORACLE\ARCH\ORCL_15_1_1086443491.ARC
9 1 16 A 21/10/30
이름: C:\APP\ORACLE\ARCH\ORCL_16_1_1086443491.ARC
|
3일 지난 아카이브로그 파일 삭제
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
|
RMAN> DELETE NOPROMPT ARCHIVELOG UNTIL TIME 'SYSDATE-3';
복구 카탈로그 대신 대상 데이터베이스 제어 파일을 사용하고 있습니다.
채널을 할당했습니다: ORA_DISK_1
채널 ORA_DISK_1: SID=21 장치 유형=DISK
db_unique_name ORCL을(를) 가진 데이터베이스에 대한 아카이브된 로그 복사본 목록
=====================================================================
키 스레드 시퀀스 S Low 시간
------- ---- ------- - --------
1 1 8 A 21/10/27
이름: C:\APP\ORACLE\ARCH\ORCL_8_1_1086443491.ARC
2 1 9 A 21/10/27
이름: C:\APP\ORACLE\ARCH\ORCL_9_1_1086443491.ARC
3 1 10 A 21/10/27
이름: C:\APP\ORACLE\ARCH\ORCL_10_1_1086443491.ARC
4 1 11 A 21/10/27
이름: C:\APP\ORACLE\ARCH\ORCL_11_1_1086443491.ARC
5 1 12 A 21/10/28
이름: C:\APP\ORACLE\ARCH\ORCL_12_1_1086443491.ARC
6 1 13 A 21/10/28
이름: C:\APP\ORACLE\ARCH\ORCL_13_1_1086443491.ARC
7 1 14 A 21/10/29
이름: C:\APP\ORACLE\ARCH\ORCL_14_1_1086443491.ARC
8 1 15 A 21/10/30
이름: C:\APP\ORACLE\ARCH\ORCL_15_1_1086443491.ARC
9 1 16 A 21/10/30
이름: C:\APP\ORACLE\ARCH\ORCL_16_1_1086443491.ARC
아카이브된 로그를 삭제했습니다.
아카이브된 로그 파일 이름=C:\APP\ORACLE\ARCH\ORCL_8_1_1086443491.ARC RECID=1 STAMP=1087052282
아카이브된 로그를 삭제했습니다.
아카이브된 로그 파일 이름=C:\APP\ORACLE\ARCH\ORCL_9_1_1086443491.ARC RECID=2 STAMP=1087052282
아카이브된 로그를 삭제했습니다.
아카이브된 로그 파일 이름=C:\APP\ORACLE\ARCH\ORCL_10_1_1086443491.ARC RECID=3 STAMP=1087052285
아카이브된 로그를 삭제했습니다.
아카이브된 로그 파일 이름=C:\APP\ORACLE\ARCH\ORCL_11_1_1086443491.ARC RECID=4 STAMP=1087138717
아카이브된 로그를 삭제했습니다.
아카이브된 로그 파일 이름=C:\APP\ORACLE\ARCH\ORCL_12_1_1086443491.ARC RECID=5 STAMP=1087138720
아카이브된 로그를 삭제했습니다.
아카이브된 로그 파일 이름=C:\APP\ORACLE\ARCH\ORCL_13_1_1086443491.ARC RECID=6 STAMP=1087225139
아카이브된 로그를 삭제했습니다.
아카이브된 로그 파일 이름=C:\APP\ORACLE\ARCH\ORCL_14_1_1086443491.ARC RECID=7 STAMP=1087311546
아카이브된 로그를 삭제했습니다.
아카이브된 로그 파일 이름=C:\APP\ORACLE\ARCH\ORCL_15_1_1086443491.ARC RECID=8 STAMP=1087313025
아카이브된 로그를 삭제했습니다.
아카이브된 로그 파일 이름=C:\APP\ORACLE\ARCH\ORCL_16_1_1086443491.ARC RECID=9 STAMP=1087399421
9 객체를 삭제함
|
남은 아카이브로그 확인
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
|
RMAN> list archivelog all;
복구 카탈로그 대신 대상 데이터베이스 제어 파일을 사용하고 있습니다.
db_unique_name ORCL을(를) 가진 데이터베이스에 대한 아카이브된 로그 복사본 목록
=====================================================================
키 스레드 시퀀스 S Low 시간
------- ---- ------- - --------
10 1 17 A 21/10/31
이름: C:\APP\ORACLE\ARCH\ORCL_17_1_1086443491.ARC
11 1 18 A 21/11/01
이름: C:\APP\ORACLE\ARCH\ORCL_18_1_1086443491.ARC
12 1 19 A 21/11/02
이름: C:\APP\ORACLE\ARCH\ORCL_19_1_1086443491.ARC
|
주기적으로 삭제되게끔 스케줄러 설정
파일은 C:\DBA에 저장함
배치 파일 생성 rman_archdel.bat
1
|
rman target / @C:\DBA\rman_archdel.sql log=C:\DBA\rman_rman_archdel_%date:-=%.log
|
sql 파일 생성 rman_archdel.sql (90일이 지난 아카이브로그는 지워지게끔 설정)
1
2
3
4
5
6
7
|
# rman_archdel.sql
run
{
CROSSCHECK ARCHIVELOG ALL;
DELETE NOPROMPT EXPIRED ARCHIVELOG ALL;
DELETE NOPROMPT ARCHIVELOG UNTIL TIME 'SYSDATE-90';
}
|
시작 - 검색 - 스케줄러 검색해서 작업 스케줄러 실행
작업 스케줄러 우클릭 - 작업 만들기 실행
작업 이름, 설명 작성 후 보안옵션 선택
트리거 새로만들기
매일 1일마다, 작업지연시간 선택
동작 - 새로 만들기 실행
프로그램시작, 스크립트파일명, 시작위치에는 스크립트 파일이 있는 경로를 삽입
동작등록 확인 후 확인
저장시 windows 유저 패스워드 입력
정상적으로 스케줄러가 생성됨
테스트 실행
C:\DBA에 정상적으로 로그파일이 생성됨
로그파일 확인
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
|
복구 관리자: Release 19.0.0.0.0 - Production on 화 11월 2 15:43:11 2021
Version 19.3.0.0.0
Copyright (c) 1982, 2019, Oracle and/or its affiliates. All rights reserved.
대상 데이터베이스에 접속됨: ORCL(DBID=1614224227)
RMAN> # rman_archdel.sql
2> run
3> {
4> CROSSCHECK ARCHIVELOG ALL;
5> DELETE NOPROMPT EXPIRED ARCHIVELOG ALL;
6> DELETE NOPROMPT ARCHIVELOG UNTIL TIME 'SYSDATE-90';
7> }
8>
복구 카탈로그 대신 대상 데이터베이스 제어 파일을 사용하고 있습니다.
채널을 할당했습니다: ORA_DISK_1
채널 ORA_DISK_1: SID=147 장치 유형=DISK
아카이브된 로그에 관한 검증이 성공했습니다
아카이브된 로그 파일 이름=C:\APP\ORACLE\ARCH\ORCL_17_1_1086443491.ARC RECID=10 STAMP=1087485826
아카이브된 로그에 관한 검증이 성공했습니다
아카이브된 로그 파일 이름=C:\APP\ORACLE\ARCH\ORCL_18_1_1086443491.ARC RECID=11 STAMP=1087572232
아카이브된 로그에 관한 검증이 성공했습니다
아카이브된 로그 파일 이름=C:\APP\ORACLE\ARCH\ORCL_19_1_1086443491.ARC RECID=12 STAMP=1087572541
상호 확인된 3 객체
채널을 릴리스합니다: ORA_DISK_1
채널을 할당했습니다: ORA_DISK_1
채널 ORA_DISK_1: SID=147 장치 유형=DISK
사양이 저장소의 아카이브된 로그와 일치하지 않습니다.
채널을 릴리스합니다: ORA_DISK_1
채널을 할당했습니다: ORA_DISK_1
채널 ORA_DISK_1: SID=147 장치 유형=DISK
사양이 저장소의 아카이브된 로그와 일치하지 않습니다.
복구 매니저가 완성되었습니다.
|
정상적으로 실행됨
현재 90일 이상 지난 아카이브로그가 없어서 "사양이 저장소의 아카이브된 로그와 일치하지 않습니다."로 나옴
참조 : https://positivemh.tistory.com/632
https://positivemh.tistory.com/619
'ORACLE > Admin' 카테고리의 다른 글
오라클 19c AWR 에 저장된 정보 확인(awrinfo.sql) (0) | 2021.11.05 |
---|---|
오라클 19c 무료 클라이언트, 모니터링 툴 (0) | 2021.11.03 |
오라클 19c 윈도우 환경에서 ahf(tfa) 설치 및 로그수집 가이드(SRDC) (0) | 2021.10.20 |
오라클 19c 장애시 로그수집 가이드(수동) (0) | 2021.10.12 |
오라클 11g R2 윈도우환경에서 장애시 로그수집 가이드(SRDC) (0) | 2021.08.16 |