강좌
클라우드/리눅스에 관한 강좌입니다.
데이터베이스 분류

offline 백업/복구

작성자 정보

  • 웹관리자 작성
  • 작성일

컨텐츠 정보

본문

offline 백업/복구

 

논리적 백업 - export/import유틸리티 사용
       오라클데이터베이스에서의 관점 : 오라클 자체적으로 백업을 처리
       읽기일관성을 보장하기 위해 보통 alter system enable restricted session을 수행후 실행
       장점: 다른 백업전략보다 손쉽게 할 수 있음.
             DB online상태에서 수행가능
             변경사항이 거의 없거나, read only database에 적당하다
             (dataware house, DSS: Decision Support System)
       단점: 읽기일관성을 보장하지 못함.
             대개 사용자실수(테이블drop..)에서 복구옵션으로 사용됨
             백업이 수행된 시점까지만 복구가능.
     


     

물리적 백업 - offline(cold)백업
      OS에서의 관점 : 오라클 자체에서 백업이 다 처리되지 못하고, OS상의 복사 명령등이 수행됨
      오라클 shutdown후 datafile, redo log file, control file, parameter
      file등을 OS의 복사명령으로 수행하여 백업
      백업받을 파일들의 목록은 v$datafile, v$logfile, v$controlfile에서 구할 수 있다.
      장점: 읽기 일관성이 보장됨
      단점: 오라클 shutdown필요
            백업이 수행된 시점까지만 복구가능
     


     

물리적 + 논리적 - online백업
      말그대로 데이터베이스가 online상태에서 백업함.
      이 기능을 사용하기 위해선 archive모드를 사용해야 함
      보통 tablespace단위로 백업. 따라서 백업중인 tablespace를 제외한
      다른 tablespace는 사용자들에게 가용한 상태로 있음.
      tablespace단위로 백업할 경우 v$tablespace에서 백업할 tablespace의 목록을 구할 수 있다.
      control file, archived log파일도 같이 백업해야 한다.

      alter tablespace 테이블스페이스명 begin backup;
        OS상에서 테이블스페이스를 백업
      alter tablespace 테이블스페이스명 end backup;
      모든 테이블스페이스에 대해 위의 명령을 차례로 수행하여 백업
     
      장점: DB 온라인상태에서 수행
            읽기일관성 보장
            백업중에도 db사용가능.
      단점: 다른 백업에 비해 복잡
            아카이브로그(디스크에 있는 online redo log의 복사본을 뜨는 것) 모드로 운영해야 함
 
      복구는 2단계로 이루어진다.
       백업이 실시된 시점까지 백업본을 적용
       장애가 발생한 시점까지 archive redo log 적용
 
  * 권장되는 백업: cold백업 + archivelog log 병용
 


 
 

RMAN백업
  DB의 online or offline일때, rman을 사용하여 백업
  장점: 사용되는 공간만 백업수행
        tablespace를 백업모드로 할 필요가 없으므로 redo의 오버헤드를 감소시킨다.
        24시간 가용성을 제공하고 완벽한(complete) 복구을 보장한다.
        사용자가 지정한 시간(point-in-time recovery : time, scn, cancel)까지 복구를 지원
   

offline백업(cold백업) 
1. DB를 shutdown normal 혹은 shutdown immediate로 닫는다.
   만일, shutdown immediate로 DB가 셧다운이 안될때는 다음과 같이 한다.
   
   alter system checkpoint;
   shutdown abort;
   startup restrict;
   shutdown immediate;
   
2. OS의 복사명령으로 datafile, redo log파일, control파일, parameter파일(init.ora), 패스워드파일(orapwSID)
   을 백업한다.

3. 백업이 끝났으면(위의 2번과정을 다 수행했다면), DB를 startup해서 사용한다.


복구(오프라인복구) 
(Offline백업에 대한 복구는 장애가 발생한 시점까지가 아니라, 가장 최근의 백업시점까지만 복구가능하다 - 당연)

동일한 디스크에 위치한 데이터파일 복구

1. DB를 shutdown abort로 닫는다.
2. 백업해두었던 datafile, redo log파일, control파일, parameter파일(init.ora), 패스워드파일(orapwSID)
   들을 현재의 DB데이터파일들이 위치한 곳으로 이동
3. startup mount수행
4. alter database open resetlos수행


상이한 디스크에 위치한 데이터파일 복구
만일 디스크가 교체될 수 없는 경우, 파일들을 다른 디스크로 이동시켜 복구한다.

1. DB를 shutdown abort로 닫는다.
2. 백업해두었던 datafile, redo log파일, control파일, parameter파일(init.ora), 패스워드파일(orapwSID)
   들을 다른 디스크로 이동
3. 패러미터파일에서 control_files패러미터를 수정
4. startup mount exclusive수행
5. 새로운 디스크에 위치한 데이터파일들의 위치를 control파일에 갱신
	alter database maddog
	rename file '/u01/oracle/data/data01.dbf' to '/u02/oracle/data/data01.dbf'
6. DB백업(형식적인 절차)
7. alter database open resetlogs수행

관련자료

댓글 0
등록된 댓글이 없습니다.

공지사항


뉴스광장


  • 현재 회원수 :  60,150 명
  • 현재 강좌수 :  36,432 개
  • 현재 접속자 :  288 명