백업과 복구/Redo log

17. 다중화 된 상태에서 inactive 리두 로그 멤버를 손상시키기

오운학 2024. 4. 14. 19:11

OCP문제 : 위의 상태에서 DB 내렸다면 DB 정상적으로 운영되는가?

 

 

 

실습 구성

#1 지금 현재 있는 그룹에 멤버를 2개씩 유지하게 하세요

#2. 1 그룹만 current이고 나머지는 inactive상태가 되게 하시오

#3. 3 그룹의 멤버중 하나를 삭제하세요

#4. 로그스위치를 수동으로 여러 일으키는게 가능한지 확인하세요

 

리두 로그 그룹의 멤버를 삭제할 os 해당 파일이 같이 삭제가 안되었다

그래서 다음과 같이 따로 삭제해야한다

그런데 이때 주의할 사항이 @/home/oracle/logfile.slq 해서 결과에 없는 logfile 멤버를 지워야지 기존에 잘쓰고 있던 멤버를 지우면 안된다

 

 

 

실습 구현

기존에 있던 redolog0*b.log 파일들을 지우기

 

 

#1 지금 현재 있는 그룹에 멤버를 2개씩 유지하게 하세요

alter database add logfile member '/u01/app/oracle/oradata/Ouh/redo01b.log' to group 1;
alter database add logfile member '/u01/app/oracle/oradata/Ouh/redo02b.log' to group 2;
alter database add logfile member '/u01/app/oracle/oradata/Ouh/redo03b.log' to group 3;

 

#2. 1 그룹만 current이고 나머지는 inactive상태가 되게 하시오

@logsw

 

#3. 3 그룹의 멤버중 하나를 삭제하세요

오라클은 지금 redo03b.log 없는지 모른다

-> LGWR redo03b.log 사용하려 알게된다

 

 

#4. 로그스위치를 수동으로 여러 일으키는게 가능한지 확인하세요

alter system switch logfile;
@/home/oracle/log_status
alter system switch logfile;
@/home/oracle/log_status

 

파일이 깨진건 알고 있지만 rodo03.log 남아있어서 정상적으로 운영되지만

alert로그 파일에 계속해서 메시지를 남긴다 -> 주인님 redo03b.log 없어요!!!

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