Database초보우낙

14. redo log group의 멤버 삭제하기 본문

백업과 복구/완전복구

14. redo log group의 멤버 삭제하기

오운학 2024. 4. 14. 17:35

리두 로그 그룹의 멤버를 삭제하려면 삭제하려는 리두 로그 그룹의 상태가 current active 안된다

 

 

 실습

#1. redo log group 상태를 확인

#2. inactive 리두 로그 그룹의 멤버를 하나 drop한다

#3. 나머지 리두 로그 그룹의 멤버도 drop하고 그룹당 멤버를 1개씩만 유지

( 로그 스위치와 체크포인트를 일으켠서 상태를 inactive 만들어놓고 작업)

 

실습 구현

#1. redo log group 상태를 확인

@log_status.sql

 

 

select group#, member from v$logfile order by 1 , 2 ; --로그파일확인

save logfile.sql

 

#2. inactive 리두 로그 그룹의 멤버를 하나 drop한다

alter database drop logfile  member '/u01/app/oracle/oradata/Ouh/redo02b.log';
alter database drop logfile  member '/u01/app/oracle/oradata/Ouh/redo03b.log';
alter database drop logfile  member '/u01/app/oracle/oradata/Ouh/redo01b.log'; ---1번은 CURRENT 상태여서 삭제가 불가능

 

--CURRENT 리두로그를 다음으로 바꾸기 위해서 실행

alter system switch logfile;
alter system checkpoint;
@log_status.sql

CURRENT 2번으로 변했다

alter database drop logfile  member '/u01/app/oracle/oradata/Ouh/redo01b.log';

 

 

#3. 나머지 리두 로그 그룹의 멤버도 drop하고 그룹당 멤버를 1개씩만 유지

( 로그 스위치와 체크포인트를 일으켠서 상태를 inactive 만들어놓고 작업)