Backup/RMAN

Incarnation 정리하는 방법

잇꼬 2024. 1. 29. 14:25
728x90
반응형
SMALL

#) DB를 resetlogs로 한 이력들 확인
RMAN> list incarnation;


#) incarnation 정보를 1번을 나누고 삭제 하겠다.
RMAN> drop catalog;


=> control file 재생성 해야 한다.
<oracle session>
#) control file 본떠야 한다.

conn / as sysdba
alter database backup controlfile to trace as '/home/oracle1/con.sql';

 


#) 정상적인 종료 

shutdown immediate



#) os로 나와서 control file trace뜬거 vi로 열기

SYS@ora11g> !
[oracle1@oracle ~]$ vi con.sql

 

CREATE CONTROLFILE REUSE DATABASE "ORA11G" NORESETLOGS  ARCHIVELOG
    MAXLOGFILES 16
    MAXLOGMEMBERS 3
    MAXDATAFILES 100
    MAXINSTANCES 8
    MAXLOGHISTORY 292
LOGFILE
  GROUP 7 '/u01/app/oracle/oradata/ora11g/redo07.log'  SIZE 100M BLOCKSIZE 512,
  GROUP 8 '/u01/app/oracle/oradata/ora11g/redo08.log'  SIZE 100M BLOCKSIZE 512,
  GROUP 9 '/u01/app/oracle/oradata/ora11g/redo09.log'  SIZE 100M BLOCKSIZE 512
-- STANDBY LOGFILE
DATAFILE
  '/u01/app/oracle/oradata/ora11g/system01.dbf',
  '/u01/app/oracle/oradata/ora11g/sysaux01.dbf',
  '/u01/app/oracle/oradata/ora11g/users01.dbf',
  '/u01/app/oracle/oradata/ora11g/example01.dbf',
  '/u01/app/oracle/oradata/ora11g/undo01.dbf'
CHARACTER SET AL32UTF8
;



#) oracle로 접속해서 nomount로 열기
[oracle1@oracle ~]$ exit

startup nomount



#) con.sql 에서 복사한 걸 붙여넣기

CREATE CONTROLFILE REUSE DATABASE "ORA11G" NORESETLOGS  ARCHIVELOG
    MAXLOGFILES 16
    MAXLOGMEMBERS 3
    MAXDATAFILES 100
    MAXINSTANCES 8
    MAXLOGHISTORY 292
LOGFILE
  GROUP 7 '/u01/app/oracle/oradata/ora11g/redo07.log'  SIZE 100M BLOCKSIZE 512,
  GROUP 8 '/u01/app/oracle/oradata/ora11g/redo08.log'  SIZE 100M BLOCKSIZE 512,
  GROUP 9 '/u01/app/oracle/oradata/ora11g/redo09.log'  SIZE 100M BLOCKSIZE 512
-- STANDBY LOGFILE
DATAFILE
  '/u01/app/oracle/oradata/ora11g/system01.dbf',
  '/u01/app/oracle/oradata/ora11g/sysaux01.dbf',
  '/u01/app/oracle/oradata/ora11g/users01.dbf',
  '/u01/app/oracle/oradata/ora11g/example01.dbf',
  '/u01/app/oracle/oradata/ora11g/undo01.dbf'
CHARACTER SET AL32UTF8
;



#) datafile recover 하기
=> recover 할 것이 없어서 저런 오류가 나오는 것이다.

recover database;


#) DB open 하기

alter database open;


#) temp file 확인, 생성 후 확인

select * from v$tempfile;

ALTER TABLESPACE TEMP ADD TEMPFILE '/u01/app/oracle/oradata/ora11g/temp01.dbf'
     SIZE 20971520  REUSE AUTOEXTEND ON NEXT 655360  MAXSIZE 32767M;

 

 

select * from v$tempfile;



<RMAN session>
#) 재접속 
RMAN> exit
[oracle1@oracle ~]$ rman target /


#) incarnation 확인해 주기
=> cold/hot backup 받기 제일 좋다!

RMAN> list incarnation;


#) backup 확인
RMAN> list backup;
=> data file이 망가진 것은 아니다. 


#) backup 다시 받기
RMAN> backup as compressed backupset database;


#) backup 확인
RMAN> list backup;


#) 정책상 필요없는 아카이브 파일 확인
RMAN> report obsolete;


#) 정책상 필요없는 아카이브 파일 삭제
RMAN> delete obsolete;


#) 삭제되었는지 확인
RMAN> report obsolete;

 

728x90
반응형
LIST

'Backup > RMAN' 카테고리의 다른 글

system01.dbf 이 장애 났을 경우  (0) 2024.01.29
SPFILE/PFILE 장애 났을 경우  (1) 2024.01.29
control file이 장애 났을 경우 ⓑ  (0) 2024.01.29
control file이 장애 났을 경우 ⓐ  (0) 2024.01.29
CANCEL BASED RECOVERY  (1) 2024.01.26