본문 바로가기
🗄️ DB_이야기/# 🛢️ Oracle

[Oracle] RMAN 복구(IMAGE COPY)

by gwon_s 2026. 2. 9.

1️⃣ IMAGE COPY 복구 기본 원리

IMAGE COPY 복구는 “복원(RESTORE)”이 아니라
“데이터파일 포인터(경로) 전환(SWITCH)”이다

 

[IMAGE COPY 존재]
        ↓
[SWITCH] (경로 포인터 변경)
        ↓
[RECOVER] (redo 적용)
        ↓
[OPEN]

❌ 안 하는 것

  • 파일 복사 ❌
  • 블록 이동 ❌
  • 데이터 재구성 ❌

✅ 하는 것

  • controlfile의 경로 정보만 변경
[Before]
	Datafile 7 → /u01/oradata/users01.dbf
[After]
	Datafile 7 → /backup/image/users01.dbf

2️⃣ IMAGE COPY 복구 절차 (전체 DB)

1. DB MOUNT

SQL> shutdown immediate;
SQL> startup mount;

 

 

 

2. IMAGE COPY 백업 데이터 파일을 운영 데이터파일로 전환

전체 데이터파일 복구 시:

RMAN> SWITCH DATAFILE 7 TO COPY;
  • online datafile이면 offline 필요

 

불완전(특정 데이터파일) 복구 시:

RMAN> SWITCH DATABASE TO COPY;

 

📌 데이터파일 전환 의미:

  • controlfile에 등록된 이미지 카피 경로를 현재 데이터파일 경로로 채택
  • 파일을 복사하는 게 아님 controlfile의 pointer만 바꿈

 

 

3. 복구 수행 (아카이브 적용)

전체 데이터파일 복구 시:

RMAN> RECOVER DATABASE;

 

불완전(특정 데이터파일) 복구 시:

RMAN> RECOVER DATAFILE 7;

 

 

4. DATABASE OPEN

전체 데이터파일 복구 시:

SQL> ALTER DATABASE OPEN;

 

불완전(특정 데이터파일) 복구 시:

 

SQL> ALTER DATABASE OPEN RESETLOGS;