by 뿔탄 [Oracle 백업/복구] 백업 RMAN DATAFILE RECOVER [2022.08.26 15:18:24]
ORACLE 11G 11.2.0.4 RAC ASM 운영 중입니다.
개발자가 특정 테이블의 데이터를 날려먹어서 과거 시점의 컨트롤 파일 복구 시키고
DATAFILE 복원 중인데 복원 완료하고 RECOVER DATAFILE 수행할때 아카이브 로그가 꼭 필요할까요
아카이브 로그는 운영기에 있고 지금 복구 하려는 DB는 복제DB인데 복제DB에는 아카이브 로그가 없습니다.
백업장비에 있는 아카이브로그를 운영기에 복원하고 복제DB서버는 물리적으로 서버가 달라서 옮겨야 하는데
옮기는 방법이 있을까요
질문
1. DATAFILE 복원 중인데 복원 완료하고 RECOVER DATAFILE 수행할때 아카이브 로그가 꼭 필요할까요
2. 아카이브로 로그가 꼭 필요하다면 백업장비에 있는 아카이브로그를 운영기에 복원하고 복제DB서버는 물리적으로 서버가 달라서
옮겨야 하는데 옮기는 방법이 있을까요 (ASM 안에 있는 아카이브 로그를 일반 파일시스템으로 복구하고 복제서버로 옮긴다음 복제서버의 ASM에 이동 가능한지)
1. 백업방식이 콜드백업이냐, 핫백업이냐에 따라 다릅니다. 콜드백업인경우엔 아카이브가 필요없긴한데, DB 를 shutdown 하고 백업을 받는곳은 거의 없고.. 백업서버가 있다고 하셨으니 핫백업이실거라 생각됩니다.
핫백업으로 받는 경우 데이터파일 헤더의 SCN이 다를 확률이 높기 때문에 아카이브로그파일이 필요할 것으로 예상되네요.
2. AS-IS 에서 아카이브로그파일은 FS로 빼고, 복제서버로 옮긴다음에 ASM 으로 이동을 할필요가 있나요?
복제서버에서 FS 으로만 옮긴다음에, log_archive_dest_1 파라미터를 해당 경로로 변경하시면 됩니다.
아니면 FS로 옮긴다음에 backup controlfile 에 catalog 시킨다음에 recover database 하셔도 되구요..
이렇게 복구하시면 불완전복구인 resetlogs 로 오픈을 하시기때문에 incarnation 이 달라져서 어차피 이전 아카이브들 및 백업들은 사용할 수 없게 되므로 굳이 ASM 에 넣을필요가 없습니다.