#) rman 접속
[oracle1@oracle ~]$ rman target /
RMAN> show all;
#) 원래 상태로 변경
RMAN> CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK CLEAR;
#) 확인
RMAN> show all;
#) backup 확인
RMAN> list backup;
#) backup 삭제
RMAN> delete backupset;
#) backup 다시 받기
RMAN> backup as compressed backupset database;
#) backup 확인
RMAN> list backup;
#) 아카이브 확인
=> 백업 받고 나서 이전 아카이브 파일 필요없으니 삭제해야 한다.
RMAN> report obsolete;
#) 아카이브 지우기
=> 백업 받고 나서 이전 아카이브 파일 필요없으니 삭제해야 한다.
RMAN> delete obsolete;
#) 지워졌는지 확인
RMAN> report obsolete;
#) redo log 정보 확인
SELECT a.group#, b.sequence#, a.member, b.bytes/1024/1024 MB, b.archived, b.status, b.first_time, b.first_change#, b.next_change#
FROM v$logfile a, v$log b
WHERE a.group# = b.group#
ORDER BY 1;
#) control file 확인
select name from v$controlfile;
#) control file 장애 유발
! rm /u01/app/oracle/oradata/ora11g/control01.ctl
! ls /u01/app/oracle/oradata/ora11g/control01.ctl
#) 체크포인트 유발
alter system checkpoint;
#) DB 내리기
=> 오류발생
shutdown immediate
#) 비정상적인 종료
SYS@ora11g> shutdown abort
#) rman으로 재접속
RMAN> exit
[oracle1@oracle ~]$ rman target /
#) nomount 단계까지 올리기
RMAN> startup nomount
#) backup 확인해보기
=> control file(backup)에서 확인할 수 있음.
RMAN> list backup;
#) 복구 하기
최근에 backup 정보 중에 control file 위치 check 하기
/u01/app/oracle/fast_recovery_area/ORA11G/autobackup/2024_01_29/o1_mf_s_1159523112_lvfx8s8l_.bkp
RMAN> restore controlfile from '/u01/app/oracle/fast_recovery_area/ORA11G/autobackup/2024_01_29/o1_mf_s_1159523112_lvfx8s8l_.bkp';
#) DB mount 단계로 올리기
RMAN> alter database mount;
#) recover 하기
=> 과거 scn번호와 맞춰주는 작업이 필요하다.
RMAN> recover database;
#) DB open 하기
=> control file이 깨지면 resetlogs로 open해야 한다!
=> 과거의 backup본은 의미가 없다!
RMAN> alter database open resetlogs;
#) backup 다시 받기
backup as compressed backupset database;
=> 과거의 backup본은 의미가 없다!
RMAN> backup as compressed backupset database;
#) backup 본 확인
RMAN> list backup;
#) 정책상 필요없는 아카이브 파일 확인 및 삭제
RMAN> report obsolete;
RMAN> delete obsolete;
#) 다시 확인하기
RMAN> report obsolete;
=> crosscheck 해야한다!
#1) croeecheck 아카이브 파일
RMAN> crosscheck archivelog all;
#2) 확인
RMAN> list expired archivelog all;
#3) 지우기
RMAN> delete expired archivelog all;
#4) 지워졌는지 다시 확인
RMAN> list expired archivelog all;
#5) 최종적으로 아카이브 파일 확인
RMAN> report obsolete;
#) oracle 확인
#1) 재접속
SYS@ora11g> conn / as sysdba
#2) redo log 정보 확인
SELECT a.group#, b.sequence#, a.member, b.bytes/1024/1024 MB, b.archived, b.status, b.first_time, b.first_change#, b.next_change#
FROM v$logfile a, v$log b
WHERE a.group# = b.group#
ORDER BY 1;
'Backup > RMAN' 카테고리의 다른 글
Incarnation 정리하는 방법 (0) | 2024.01.29 |
---|---|
control file이 장애 났을 경우 ⓑ (0) | 2024.01.29 |
CANCEL BASED RECOVERY (1) | 2024.01.26 |
clone DB 이용해서 삭제된 table ora11g DB import 하기 (1) | 2024.01.26 |
clone DB 생성 후 운영 중인 table 삭제했을 경우 (1) | 2024.01.26 |