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

[Oracle] RMAN 커맨드

by gwon_s 2026. 5. 10.

1. RMAN 접속

TARGET [사용자계정]@[서비스명] AS [권한]
-- 로컬에서 바로 접속
$ rman target / 

-- 보조DB 접속
$ RMAN AUXILIARY SYS/PWD@AUX_STRING 

-- 운영자 권한으로 복제를 위한 접속
RMAN> TARGET "sbu@prod  AS SYSDBA" AUXILIARY "sbu@dupdb AS SYSDBA";

-- SYSBACKUP 권한으로 복제를 위한 접속
RMAN> TARGET "sbu@prod  AS SYSBACKUP" AUXILIARY "sbu@dupdb AS SYSBACKUP"; 

-- SYSBACKUP 권한으로 접속
RMAN> CONNECT TARGET "sbu@inst1 AS SYSBACKUP"; 

-- SYSDBA 권한으로 접속
RMAN> CONNECT TARGET "sbu@prod AS SYSDBA";

 


 

2. 채널 할당

  • 외부 백업 솔루션과 연결
    • DISK : 로컬 디스트, 마운트된 스토리지의 백업 파일 관리
    • SBT : 테이프 백업 장치  
    • SEND | PARMS : 솔루션 연결 
RMAN> ALLOCATE CHANNEL c1 DEVICE TYPE 'SBT_TAPE';

RMAN> ALLOCATE CHANNEL c1 DEVICE TYPE 'SBT_TAPE'
		PARMS 'ENV=(OB_MEDIA_FAMILY=wholedb_mf)';
 
RMAN> ALLOCATE CHANNEL t1 DEVICE TYPE SBT_TAPE
		PARMS 'ENV=(OB_DEVICE_1=tape1, OB_DEVICE_2=tape3)';
 
RMAN> ALLOCATE CHANNEL t1 TYPE 'SBT_TAPE' 
		ARMS='SBT_LIBRARY=/usr/openv/netbackup/bin/libobk.so.1';
 
RMAN> ALLOCATE CHANNEL t1 TYPE 'SBT_TAPE'
		SEND "NB_ORA_CLIENT=CLIENT_MACHINE_NAME";
 
RMAN> ALLOCATE CHANNEL 'dev1' TYPE 'SBT_TAPE'
		PARMS 'ENV=OB2BARTYPE=ORACLE8, OB2APPNAME=ORCL,  OB2BARLIST=MACHINENAME_ORCL_ARCHLOGS)';

RMAN> ALLOCATE CHANNEL t1 DEVICE TYPE sbt
		PARMS='sbt_library=oracle.disksbt, ENV=(backup_dir=/tmp)';
        
-- 기본
RMAN> ALLOCATE CHANNEL c1 DEVICE TYPE DISK
			FORMAT 'c:\oraclebkp\db_u%';

-- 원격 접속지(bkp1)에 백업 수행 및 저장
RMAN> ALLOCATE CHANNEL t1 DEVICE TYPE DISK
			CONNECT 'sys/pwd@bkp1'; 
 
-- 디스크i/o 방지를 위해 초당 70mb 속도로 제한
RMAN> ALLOCATE CHANNEL y1 TYPE DISK RATE 70M; 
 
-- DB 복제용
RMAN> ALLOCATE AUXILIARY CHANNEL ac1 TYPE DISK; 
RMAN> ALLOCATE AUXILIARY CHANNEL ac2 DEVICE TYPE SBT;

 


 

3. 유지보수 채널 할당

RMAN> ALLOCATE CHANNEL FOR MAINTENANCE DEVICE TYPE DISK;
 
RMAN> ALLOCATE CHANNEL FOR MAINTENANCE DEVICE TYPE DISK FORMAT "/disk2/%U";
  
RMAN> ALLOCATE CHANNEL FOR MAINTENANCE DEVICE TYPE DISK CONNECT '@test1'; 
 
RMAN> ALLOCATE CHANNEL FOR MAINTENANCE DEVICE TYPE sbt;
 
RMAN> ALLOCATE CHANNEL FOR MAINTENANCE DEVICE TYPE sbt 
		PARMS 'SBT_LIBRARY=/usr/local/oracle/backup/lib/libobk.so, ENV=(OB_DEVICE_1=tape2)';
 
RMAN> ALLOCATE CHANNEL FOR MAINTENANCE DEVICE TYPE 'SBT_TAPE' 
		PARMS='SBT_LIBRARY=ORACLE.DISKSBT, ENV=(BACKUP_DIR=/TMP)';

 


4. 백업

-- 풀백업(백업셋)
RMAN> BACKUP DATABASE;

RMAN> BACKUP DATABASE PLUS ARCHIVELOG;

 

4-1. 시간 관리 백업 (Duration)

백업 시간이 정해져 있거나 시스템 부하를 조절해야 할 때 사용합니다.

  • TAG: 백업에 별명을 붙여 나중에 복구할 때 찾기 쉽게 합니다.
  • MAXSETSIZE: 백업 파일(Backup Set) 한 개의 최대 크기를 제한합니다.
  • DURATION: 정해진 시간 동안만 백업을 수행합니다.
    • MINIMIZE TIME: 최대한 빨리 백업을 끝냅니다.
    • MINIMIZE LOAD: 시스템 부하(I/O)를 최소화하면서 천천히 백업합니다.
RMAN> BACKUP DATABASE TAG='test backup';

-- 백업셋의 데이터 총합이 10M를 넘지 않게 설정
RMAN> BACKUP TAG 'Weekly_Full_DB_Backup' DATABASE MAXSETSIZE 10M;

RMAN> BACKUP MAXSETSIZE 500M DATABASE PLUS ARCHIVELOG;
 
RMAN> BACKUP DURATION 00:60 DATABASE;
 
RMAN> BACKUP DURATION 00:30 MINIMIZE TIME DATABASE;
 
RMAN> BACKUP DURATION 00:45 MINIMIZE LOAD DATABASE;

 

4-2. 보관 정책 백업 (Keep & Long-term)

보관 주기(Retention Policy)와 상관없이 특정 백업을 오래 간직하고 싶을 때 사용합니다.

  • KEEP FOREVER: 영구 보존 백업 (점검용이나 증거용)
  • KEEP UNTIL TIME: 특정 날짜까지만 보관하고 그 이후엔 삭제 가능하게 설정
  • RESTORE POINT: 복구 지점 이름을 부여하여 나중에 해당 시점으로 쉽게 되돌림
RMAN> BACKUP DATABASE KEEP FOREVER;  
 
RMAN> BACKUP DATABASE KEEP UNTIL TIME='SYSDATE+30';
 
RMAN> BACKUP DATABASE UNTIL 'SYSDATE+365' NOLOGS;

 

4-3. 예외 처리 백업 (Skip & Force)

문제가 있거나 특정 상태의 파일을 건너뛸 때 사용합니다.

  • NOEXCLUDE: DB의 모든 데이터를 예외 없이 백어
  • SKIP READONLY / OFFLINE: 읽기 전용이나 닫혀 있는 테이블스페이스는 백업 안 함.
  • SKIP INACCESSIBLE: 권한 문제나 파일 손실로 접근 안 되는 파일은 무시하고 진행
  • FORCE: 백업 최적화가 켜져 있어도 무조건 새로 백업
RMAN> BACKUP DATABASE NOEXCLUDE;
 
RMAN> BACKUP DATABASE NOEXCLUDE KEEP FOREVER TAG='abc';
 
RMAN> BACKUP DATABASE SKIP READONLY;
 
RMAN> BACKUP DATABASE SKIP OFFLINE;
 
RMAN> BACKUP DATABASE SKIP INACCESSIBLE;
 
RMAN> BACKUP DATABASE SKIP READONLY SKIP OFFLINE SKIP INACCESSIBLE;

-- CONFIGURE BACKUP OPTIMIZATION ON 상태인 경우 OFF 설정 안해도 새로 백업
RMAN> BACKUP DATABASE FORCE;

 

4-4. 효율적인 증분 및 중복 방지 (Not Backed Up)

이미 백업된 건 건너뛰고 필요한 것만 골라낼 때 유용합니다.

  • NOT BACKED UP: 아직 한 번도 백업 안 된 파일만 백업
  • SINCE TIME: 특정 시점 이후로 백업 안 된 파일만 골라냄
  • COPIES=2: 백업본을 동시에 두 군데에 저장 (이중화)
  • 2 TIMES: 백업된 횟수가 2회 미만인 로그만 백업
RMAN> BACKUP DATABASE NOT BACKED UP;
 
RMAN> BACKUP DATABASE NOT BACKED UP SINCE TIME='SYSDATE–3';
 
RMAN> BACKUP NOT BACKED UP SINCE TIME 'SYSDATE-10'
		MAXSETSIZE 500M DATABASE PLUS ARCHIVELOG;
 
RMAN> BACKUP DATABASE COPIES=2;

RMAN> BACKUP DATABASE NOT BACKED UP 2 TIMES;

 

4-5. 아카이브 로그 관리 (Archivelog)

로그를 백업하고 디스크에서 지우는 작업입니다.

  • PLUS ARCHIVELOG: DB 백업 전후로 아카이브 로그까지 묶어서 백업
  • DELETE [ALL] INPUT: 백업이 성공하면 원본 아카이브 로그 파일을 삭제 (디스크 공간 확보)
  • SEQUENCE / TIME: 특정 번호나 시간대의 로그만 골라서 백업
RMAN> BACKUP ARCHIVELOG ALL;
 
RMAN> BACKUP ARCHIVELOG ALL DELETE INPUT;
 
RMAN> BACKUP ARCHIVELOG LIKE '/arch%' DELETE ALL INPUT;

RMAN> BACKUP ARCHIVELOG NOT BACKED UP 2 TIMES;
 
RMAN> BACKUP ARCHIVELOG FROM TIME 'SYSDATE–3';
 
RMAN> BACKUP ARCHIVELOG FROM SEQUENCE 100;
 
RMAN> BACKUP ARCHIVELOG FROM SEQUENCE 999 DELETE INPUT;
 
RMAN> BACKUP ARCHIVELOG FROM SEQUENCE 123 DELETE ALL INPUT;
 
RMAN> BACKUP ARCHIVELOG FROM SEQUENCE 21531 UNTIL SEQUENCE 21590
	FORMAT '/tmp/archive_backup.bkp';
 
RMAN> BACKUP ARCHIVELOG ALL FROM SEQUENCE 1200 DELETE ALL INPUT;

 

4-6. 부분 백업 (Tablespace & Datafile 등)

DB 전체가 아니라 필요한 부분만 백업할 때 씁니다.

  • TABLESPACE / DATAFILE: 특정 테이블스페이스나 파일 번호로 백업.
  • SECTION SIZE: 아주 큰 파일(Bigfile)을 여러 조각으로 나누어 병렬로 백업할 때 씁니다. 속도가 엄청나게 빨라집니다.
  • CURRENT CONTROLFILE / SPFILE: DB 설정 파일만 따로 백업.
RMAN> BACKUP TABLESPACE TEST;
 
RMAN> BACKUP TABLESPACE SYSTEM, USERS, TOOLS;
 
RMAN> BACKUP TABLESPACE 4;
 
RMAN> BACKUP TABLESPACE USERS PLUS ARCHIVELOG;
 
RMAN> BACKUP TABLESPACE USERS INCLUDE CURRENT CONTROLFILE;
 
RMAN> BACKUP TABLESPACE USERS INCLUDE CURRENT CONTROLFILE
		PLUS ARCHIVELOG;
 
RMAN> BACKUP TABLESPACE USERS SECTION SIZE 100M;
 
RMAN> BACKUP SECTION SIZE 250M TABLESPACE USERS;
 
RMAN> BACKUP DATAFILE 9;
 
RMAN> BACKUP DATAFILE '/U01/DATA/...';
 
RMAN> BACKUP DATAFILE 1 PLUS ARCHIVELOG;

-- '?'는 자동으로 ORACLE_HOME 경로로 치환 
RMAN> BACKUP KEEP FOREVER FORMAT '?/DBS/%U_LONGTERM.CPY'
	TAG 'Longterm_bck' DATAFILE 1 DATAFILE 2;
 
RMAN> BACKUP SECTION SIZE 500M DATAFILE 6;

-- Fast Recovery Area 내에 있는 백업셋, 컨트롤파일 복사본, 아카이브 등 모든 복구용 파일을 백업
RMAN> BACKUP RECOVERY FILES;

-- 컨트롤 파일 백업
RMAN> BACKUP CURRENT CONTROLFILE TO '/backup/cntrlfile.copy';
 
-- 컨트롤 파일 복사본의 재백업
RMAN> BACKUP CONTROLFILE COPY '/u10/backup/control.bkp';
 
-- 서버 파라미터 파일 백업
RMAN> BACKUP SPFILE;

 

4-7. 백업 저장소 관리

운영 서버의 디스크 부하를 줄이고, 재해 복구(DR)를 위해 데이터(백업)를 외부 장치에서 관리할 때 사용됩니다.

  • DELETE [ALL] INPUT: 백업 후 성공하면 디스크에서 지웁니다.
  • DATAFILECOPY: COPY 명령어나 BACKUP AS COPY로 만든, 원본과 똑같은 형태의 복사
RMAN> BACKUP DEVICE TYPE SBT DATABASE PLUS ARCHIVELOG;

-- 태그가 'Latest'인 백업셋을 복제하여 외부 장치로 전송
RMAN> BACKUP DEVICE TYPE SBT DATAFILECOPY FROM TAG 'Latest' FORMAT 'DF%F_%D';

RMAN> BACKUP DEVICE TYPE SBT ARCHIVELOG LIKE '/disk%arc%' DELETE ALL INPUT;

-- 만든 지 2주(14일)가 지난 디스크 백업셋들만 골라 테이프로 옮기고 디스크에서는 지웁니다.
RMAN> BACKUP DEVICE TYPE SBT BACKUPSET COMPLETED BEFORE 'SYSDATE-14' DELETE INPUT;

-- 디스크에 있는 모든 데이터 파일 복사본을 테이프로 보내되, 이미 테이프에 있는 파일은 건너뜁니다.
RMAN> BACKUP DEVICE TYPE SBT DATAFILECOPY ALL NODUPLICATES;

-- SPFILE과 아카이브로그를 외부장치로 전송
RMAN> BACKUP DEVICE TYPE SBT SPFILE ARCHIVELOG ALL;

 

4-8. 검증 및 점검 (Validate)

실제로 백업을 받지는 않지만, 백업 성공 여부 또는 파일 깨짐을 확인할 때 씁니다.

  • VALIDATE: 파일의 물리적 손상 여부를 체크
  • CHECK LOGICAL: 데이터 내부의 논리적 오류(Corruption)까지 체크
RMAN> BACKUP CHECK LOGICAL DATABASE;

RMAN> BACKUP VALIDATE CHECK LOGICAL DATABASE;
 
RMAN> BACKUP VALIDATE DATABASE;
 
RMAN> BACKUP VALIDATE DATABASE ARCHIVELOG ALL;
 
RMAN> BACKUP CHECK LOGICAL VALIDATE TABLESPACE DATA;
 
-- 데이터 파일을 64GB씩 쪼개서 병렬로 검사
RMAN> BACKUP CHECK LOGICAL VALIDATE TABLESPACE DATA SECTION SIZE 64G;

 

그 외 백업

-- 파일 경로(Path)나 이름에 arc_dest라는 글자가 포함된 것만 골라서 아카이브로그 백업
RMAN> BACKUP FORMAT='AL_%D/%T/%S/%P' ARCHIVELOG LIKE '%arc_dest%';

-- 특정 플러거블 데이터베이스(PDB)들만 지정해서 백업
RMAN> BACKUP PLUGGABLE DATABASE pdb1,pdb2;

 


 

5. 복원(RESTORE)

5-1. 사전 검증 및 시뮬레이션

  • VALIDATE: 백업 파일이 손상되지 않았는지, 실제로 읽을 수 있는지 검증
  • PREVIEW: 복원에 필요한 백업 파일 리스트를 미리 보여줌
  • SUMMARY: 상세 내역 대신 요약된 정보만 출력
  • RECALL: 테이프 장비(SBT)를 가져오라고 요청
RMAN> RESTORE DATABASE;
 
RMAN> RESTORE DATABASE VALIDATE;
 
RMAN> RESTORE DATABASE PREVIEW;
 
RMAN> RESTORE DATABASE PREVIEW SUMMARY;

RMAN> RESTORE CONTROLFILE VALIDATE;

RMAN> RESTORE ARCHIVELOG ALL VALIDATE; 
 
RMAN> RESTORE DATABASE VALIDATE HEADER PREVIEW;

 

5-2. 대상별 복원

  • DATABASE: 전체 DB 복원
  • SKIP: 특정 오브젝트를 제외하고 복원
  • UNTIL SCN: 특점 시점(SCN)까지만 복원
  • FROM AUTOBACKUP: 백업 파일을 자동으로 찾아 복원
  • TO '/u01/...' : 특정 경로에서 파일을 꺼내어 복원
  • MAXSEQ / MAXDAYS: 백업본을 찾을 때의 검색 범위
  • LOW / HIGH LOGSEQ: 특정 로그 시쿼스 범위를 지정해서 복원
  • THREAD 1: RAC 환경에서 1번 인스턴스가 생성한 것만 지정
RMAN> RESTORE DATABASE SKIP READONLY;
 
RMAN> RESTORE DATABASE SKIP TABLESPACE temp, history;
 
RMAN> RESTORE DATABASE UNTIL SCN 154876;
 
RMAN> RESTORE TABLESPACE users;
 
RMAN> RESTORE TABLESPACE data1, data2;
 
RMAN> RESTORE TABLESPACE tbs1 PREVIEW;
 
RMAN> RESTORE TABLESPACE users VALIDATE;
 
RMAN> RESTORE DATAFILE 45;
 
RMAN> RESTORE DATAFILE 23 PREVIEW;
 
RMAN> RESTORE DATAFILE 12 VALIDATE;
 
RMAN> RESTORE CONTROLFILE;

-- 백업 당시 자동으로 저장된 본을 찾아 복원
RMAN> RESTORE CONTROLFILE FROM AUTOBACKUP;
 
RMAN> RESTORE CONTROLFILE FROM TAG 'monday_cf_backup';
 
RMAN> RESTORE CONTROLFILE FROM '/u01/control01.ctl';
 
RMAN> RESTORE CONTROLFILE TO '/tmp/autobkp.dbf'
	FROM AUTOBACKUP MAXSEQ 20 MAXDAYS 150;
 
RMAN> RESTORE SPFILE;
 
RMAN> RESTORE SPFILE FROM AUTOBACKUP;
 
RMAN> RESTORE ARCHIVELOG ALL PREVIEW;
 
RMAN> RESTORE ARCHIVELOG ALL PREVIEW RECALL;
 
RMAN> RESTORE ARCHIVELOG ALL DEVICE TYPE SBT PREVIEW;
 
RMAN> RESTORE ARCHIVELOG LOW LOGSEQ 78311
	HIGH LOGSEQ 78340 THREAD 1 ALL;
 
RMAN> RESTORE ARCHIVELOG FROM LOGSEQ=<seq_no>
	UNTIL LOGSEQ=<seq_no>;
 
RMAN> RESTORE STANDBY CONTROLFILE FROM TAG 'forstandby';
 
-- control01.ctl을 data2 디렉토리에 control02.ctl로 복제
RMAN> RESTORE CLONE CONTROLFILE
	TO '+DATA/pcrd/data2/control02.ctl'
	FROM '+DATA/pcrd/data1/control01.ctl';
    
RMAN> RESTORE PLUGGABLE 
	DATABASE root, pdb1, pdb2;
 
RMAN> RESTORE PLUGGABLE
	DATABASE root, pdb1, pdb2
	SKIP FOREVER TABLESPACE pdb:ts_name, pdb:ts_name, pdb:ts_name;
-- 복원 작업 예시
RMAN> STARTUP NOMOUNT;
RMAN> RUN {
	ALLOCATE CHANNEL c1
	DEVICE TYPE sbt;
	RESTORE CONTROLFILE;
	ALTER DATABASE MOUNT;
	RESTORE DATABASE;
}

 


 

6. 복구(RECOVER)

RMAN> RECOVER DATABASE;
 
RMAN> RECOVER DATABASE NOREDO;
 
RMAN> RECOVER DATABASE SKIP TABLESPACE foo;
 
RMAN> RECOVER DATABASE SKIP FOREVER TABLESPACE baddata;
 
RMAN> RECOVER DATABASE UNTIL SCN 154876;

 

6-2. 대상별 복원

  • DELETE ARCHIVELOG MAXSIZE: 아카이브 로그를 복원해서 사용한 뒤, 지정된 용량을 초과하면 즉시 삭제
RMAN> RECOVER TABLESPACE users;

RMAN> RECOVER TABLESPACE DATA
	DELETE ARCHIVELOG MAXSIZE 2M;
 
RMAN> RECOVER DATABASE
	DELETE ARCHIVELOG MAXSIZE 1024M;
 
RMAN> RECOVER DATAFILE 33;
 
RMAN> RECOVER DATAFILE 3 block 116 DATAFILE 4 block 10;
 
RMAN> RECOVER DATAFILE 2 block 204 DATAFILE 9 block 109 FROM TAG=sundaynight;
 
RMAN> RECOVER DATAFILECOPY '/disk1/img.df' UNTIL TIME 'SYSDATE-7';
-- 임시 DB를 생성하여 PUMP 방식으로 특정 테이블 복구
-- 1. 임시 인스턴스 기동: AUXILIARY DESTINATION 경로에 임시 DB를 생성합니다.
-- 2. 필수 파일 복원: 백업셋에서 SYSTEM, SYSAUX, UNDO, 그리고 해당 테이블이 속한 DATAFILE만 쏙 골라서 임시 DB에 복원합니다.
-- 3. 시점 복구: 지정한 UNTIL TIME까지 리두 로그를 적용해 데이터를 과거 상태로 만듭니다.
-- 4. 데이터 추출: Data Pump를 이용해 임시 DB에서 해당 테이블만 덤프 파일로 뽑아냅니다.
-- 5. 원본 DB 병합: 뽑아낸 덤프 파일을 현재 운영 중인 DB(pdb1)로 임포트하여 테이블을 최종 복구합니다.
RMAN> RECOVER TABLE "TEST.EMP"
	OF PLUGGABLE DATABASE pdb1
	UNTIL TIME "TO_DATE('20-JUL-2022 15:00:00','DD-MON-YYYY HH24:MI:SS')"
	AUXILIARY DESTINATION='/ade/b/56264301/oracle/work/aux_dest'
	DATAPUMP DESTINATION='/ade/b/56264301/oracle/work/aux_dest';

 

6-2. 서비스 기반 원격 복구(Network-Based Recovery)

주로 데이터 가드(Data Guard) 환경에서 Standby DB가 운영 DB와 차이가 너무 많이 벌어졌을 때, 운영 DB에서 직접 데이터를 끌어와 동기화하는 방법

  • FROM SERVICE: 원격 DB 서비스 이름을 지정하여 복원
  • SECTION SIZE: 파일을 여러 조각 나우어 병렬 전송
  • COMPRESSED BACKUPSET: 전송 효율을 위해 네트워크 스트림을 압축
RMAN> RECOVER DATABASE
	FROM SERVICE boston
	NOREDO USING COMPRESSED BACKUPSET
	SECTION SIZE 100m;
 
RMAN> RECOVER DATABASE
	FROM SERVICE prim
	SECTION SIZE 120M
	USING COMPRESSED BACKUPSET;
 
RMAN> RECOVER DATABASE
	FROM SERVICE prim
	SECTION SIZE 120M;

 

6-3. 그 외 복구

-- V$DATABASE_BLOCK_CORRUPTION 뷰에 기록된 모든 손상 블록들을 찾아내어,
-- 사용 가능한 백업본으로부터 해당 블록만 추출해 복구
RMAN> RECOVER CORRUPTION LIST;

-- 'merge' 태그가 달린 복사본(Image Copy)에,
-- 그 이후에 받은 증분 백업(Incremental Level 1) 파일들을 합체 시켜서 복사본의 시점을 최신화
RMAN> RECOVER COPY OF DATABASE WITH TAG 'merge';
 
-- 특정 시차를 둔 백업 상태 유지
RMAN> RECOVER COPY OF DATABASE WITH TAG 'merge' UNTIL TIME 'SYSDATE - 7';

 


 

7. DB 검사

DB가 정상적으로 구동되고 복구될 수 있는지 종합 검진

RMAN> VALIDATE BACKUPSET 3871, 3890;
 
RMAN> VALIDATE DATABASE;
 
RMAN> VALIDATE CHECK LOGICAL DATABASE;
 
RMAN> VALIDATE SKIP INACCESSIBLE DATABASE;
 
RMAN> VALIDATE COPY OF DATABASE;
 
RMAN> VALIDATE TABLESPACE DATA;
 
RMAN> VALIDATE COPY OF TABLESPACE DATA;
 
RMAN> VALIDATE DATAFILE 2;
 
RMAN> VALIDATE DATAFILE 4,8;
 
RMAN> VALIDATE DATAFILE 4 BLOCK 56;
 
RMAN> VALIDATE DATAFILE 8 SECTION SIZE = 200M;
 
RMAN> VALIDATE CURRENT CONTROLFILE;
 
RMAN> VALIDATE SPFILE;
 
RMAN> VALIDATE RECOVERY FILES;
 
RMAN> VALIDATE CHECK LOGICAL RECOVERY FILES;
 
RMAN> VALIDATE RECOVERY AREA;
 
RMAN> VALIDATE CHECK LOGICAL RECOVERY AREA;
 
RMAN> VALIDATE DB_RECOVERY_FILE_DEST;
 
RMAN> VALIDATE CHECK LOGICAL
	DB_RECOVERY_FILE_DEST;
 
RMAN> VALIDATE DATAFILE 1 MIRROR ALL;
 
RMAN> VALIDATE DATAFILE 1 MIRROR 1;
 
RMAN> VALIDATE DATAFILE 1 MIRROR 2;
 
RMAN> VALIDATE DATAFILE 1 MIRROR 3;

 


 

8. 이미지 복사본 스위칭

SWITCH 명령은 오직 이미지 복사본(Image Copy) 형태의 백업에만 사용 가능.

RMAN> SWITCH DATABASE TO COPY;
 
RMAN> SWITCH TABLESPACE users to copy;
 
RMAN> SWITCH DATAFILE ALL;
 
RMAN> SWITCH DATAFILE '/disk1/tols.dbf' TO DATAFILECOPY '/disk2/tols.copy';
 
RMAN> SWITCH DATAFILE "+dg_old/db/datafile/sysaux.260.699468081" TO COPY;
 
RMAN> SWITCH TEMPFILE 1;
 
RMAN> SWITCH TEMPFILE 1 TO '/newdisk/dbs/temp1.f';
 
RMAN> SWITCH TEMPFILE ALL;
 
RMAN> SWITCH CLONE DATAFILE ALL;

 


 

9. SPOOL(로그 기록)

  • SPOOL LOG: RMAN 화면에 보이는 모든 메시지를 기록
  • SPOOL TRACE: 주로 내부 프로세스의 상세 정보나 디버깅을 위한 정보 기록
  • TO / OFF: 'TO'로 기록을 시작하고 'OFF'로 기록을 종료
RMAN> SPOOL LOG TO '/tmp/spool.log';
 
RMAN> SPOOL LOG TO '/tmp/backup.log' APPEND;
 
RMAN> SPOOL LOG OFF;
 
RMAN> SPOOL TRACE TO '/tmp/spool.trc';
 
RMAN> SPOOL TRACE TO '/tmp/backup.trc' APPEND;
 
RMAN> SPOOL TRACE OFF;

 

 

 

출처: https://positivemh.tistory.com/1250