메뉴 여닫기
개인 메뉴 토글
로그인하지 않음
만약 지금 편집한다면 당신의 IP 주소가 공개될 수 있습니다.

오라클 백업 과 복구

DB CAFE

백업 과 복구

백업

온라인 과 오프라인 백업

오프라인 백업(닫힌 백업,cold backup)

  • 데이터베이스를 종료시킨 후 백업
  • DBA만 접근이 가능한 상황에서 백업 , 콜드 백업 , 크로스 백업 이라고 부름
오프라인 백업 실행 절차

1) 백업 대상 확인

-- 1 데이터 파일 확인
SQL> SELECT NAME
          , STATUS
       FROM V$DATAFILE;

-- 2 컨트롤 파일 확인
SQL> SELECT NAME
       FROM V$CONTROLFILE;

-- 3 아카이브 로그 파일 확인 
SQL> SELECT a.group#, a.member, b.bytes/1024/1024 MB, b.sequence# "SEQ#"
          , b.status, b.archived "ARC"
       FROM v$logfile a, v$log b
      WHERE a.group#=b.group#
      ORDER BY 1,2


2) DB 종료

SQL> shutdown immediate;


3) 전체 파일 백업 수행

  • unix/linux경우 cp 명령어로 백업 디렉토리에 복사
-- 모든 데이타파일 백업/복사 
[oracle@testdb]$ cp -av /app/oracle/oradata/testdb/*.dbf /backup/cold/data/

-- 모든 로그 백업/복사 
[oracle@testdb]$ cp -av /app/oracle/oradata/testdb/*.log /backup/cold/log/

-- 모든 컨트롤파일 백업/복사 
[oracle@testdb]$ cp -av /app/oracle/oradata/testdb/*.ctl /backup/cold/control/


4) DB 시작

SQL> startup;
ORACLE instance started.
... 이하 생략 ...
오프라인 백업 주의사항
  1. 모든파일은 동일한 checkpoint SCN을 가져야 한다.
    - shutdown한 시점이 같아야 한다는 뜻
    (datafile 은 8월1일 백업, control file은 8/3일 백업, redo log 파일은 8/12일 백업,..등 각각 shutdown한 시점이 다르면 안된다.)
  2. 정상적인 shutdown 이여야 함.(shutdown immediate/transactional/normal)
    - 비정상적인 shutdown은 (shutdown abort/force/instance crash) 은 복구 불가능(일관성 문제발생 하기때문)
  3. 아카이빙/노아카이빙 로그 상관없이 가능.
  4. datafile/online redo log/control file 모두 백업 가능

온라인 백업(열린백업,hot backup)

  • DBA 이외에 유저가 사용중인 상황에서 백업, 오픈 백업 , 핫 백업 이라고 부름
온라인 백업 전 DB 점검사항
테이블스페이스 단위 온라인 백업 절차
온라인 백업을 이용한 완전 복구 방법

백업 대상 종류에 따라 분류

데이터베이스(전체) 백업 (풀백업)

DB 전체 온라인 백업 방법

각각의 테이블스페이스 와 데이터 파일 백업 (부분백업)

데이터 파일 확인 SQL
SELECT NAME
     , STATUS
  FROM V$DATAFILE;

컨트롤 파일 백업

컨트롤 파일 확인 SQL
SELECT NAME
  FROM V$CONTROLFILE;

아카이브 로그 파일 백업

redo log file 확인 SQL
SELECT a.group#, a.member, b.bytes/1024/1024 MB, b.sequence# "SEQ#"
     , b.status, b.archived "ARC"
FROM v$logfile a, v$log b
WHERE a.group#=b.group#
ORDER BY 1,2

백업 대상의 범위

  1. full 백업 : 백업 시점에서 모든 백업 실시
  2. incremental 백업(증분 백업) : 이전 변화된 부분 백업 이후에 갱신된 부분에 대해서만 백업

백업된 데이터 성질에 따른 분류

  1. 물리 백업
    오라클 데이터파일을 내용에 관계없이 백업
    RMAN 명령어로 실행
  2. 논리 백업
    오라클 데이터베이스의 테이블 데이터만 추출해서 백업
    export / import 이용 (exp/imp pump)

복구

복원 시점에 따른 분류

  1. 완전 복구
    피해 발생 직전(최종 커밋)의 데이터를 복구 한다
  2. 불완전 복구
    지정 시각과 지정 SCN번호의 시점 데이터를 복구 한다.