반응형

현재 사용하는 그룹인 경우 로그 파일 스위치를 시행해야 멤버를 삭제할 수 있다.
데이터베이스가 ARCHIVELOG 모드에서 실행 중이고 멤버가 속한 로그 파일 그룹이
아카이브되지 않은 경우 그 멤버를 삭제할 수 없다.
온라인 리두 로그 파일 멤버를 삭제할 때 OMF 기능을 사용하지 않을 경우 운영 체제
파일은 삭제되지 않는다. )

Redo log file 확인
사용 명령어
SQL> SELECT A.GROUP#, A.MEMBER, B.BYTES, B.STATUS, B.SEQUENCE#
 2 FROM V$LOGFILE A, V$LOG B
 3 WHERE A.GROUP# = B.GROUP#
 4 ORDER BY 1;
 - 현재 log 그룹과 member의 운영 상황을 조회한다.
 - GROUP# : 그룹 번호
 - MEMBER : 멤버 파일의 경로 및 파일명
 - BYTES : 멤버 파일의 크기
 - STATUS : 그룹의 상태 [표 4.1]을참고 한다.

Redo log group 추가,삭제

SQL> ALTER DATABASE DROP LOGFILE GROUP [group number];
 - 지정한 redo log group을 삭제한다.

SQL> ALTER DATABASE ADD LOGFILE GROUP [group number]
 2 (['member file1', 'member file2', ... ]) SIZE [크기];
 - redo log group을 추가한다. [group number]는 생략 가능하다.

Redo log member 추가, 삭제

SQL> ALTER DATABASE DROP LOGFILE MEMBER
 2 ['member file1', 'member file2', ...];
 - 지정한 멤버 파일을 삭제한다.

SQL> ALTER DATABASE ADD LOGFILE MEMBER
 2 ['member file'] TO GROUP [group nember],
 3 ... ;
 - redo log 멤버 파일을 지정한 그룹에 추가한다. 

아카이브 로그 모드
명령어로 작업을 수행하면 모든 작업 내용이 리두로그 파일 그룹에 저장된다.
작업의 양이 많아 지면 기록하는 데이터의 양도 많아지게 되는데 이때 리두그룹의 용량을
벗어나는 부분은 다른 리두그룹에 저장되게 되고 처음에 작업내용이 저장된 리두파일 그룹은
incative 상태가 된다. 이렇게 작업내용이 그룹에 저장되면서 모든 그룹에 용량이 부족해지면
새로운 작업내용을 이전 작업내용에 덮여 쓰여 작업내용이 지워지게 되어 이전에 작업했었던
작업내용의 데이터 손실이 발생하면 복구하기 어렵다는 단점이 있다. 이런 단점을 해결하기 위한
방법이 리두로그파일의 내용을 다른 디렉토리에 자동으로 복사하여 저장하도록 운영하는 방법을
아카이브 로그모드라고 한다. 아카이브로그모드가 실행중이고 멤버가 속한 로그 파일 그룹이
아카이브 되지 않았을 경우 그 멤버를 삭제 할 수 없다.


col name format a100
select a.group#, a.member, b.bytes, b.status, b.sequence#
from v$logfile a, v$log b
where a.group# = b.group#
order by 1;

반응형

'SQL' 카테고리의 다른 글

SQL 인젝션  (0) 2022.12.27
오라클 테이블스페이스 및 데이터 파일 관리  (0) 2022.12.27
오라클 자동실행  (0) 2022.12.27
SQL index 시퀀스  (0) 2022.12.27
오라클 Control file 확인  (0) 2022.11.17

+ Recent posts