database.sarang.net
UserID
Passwd
Database
DBMS
MySQL
PostgreSQL
Firebird
ㆍOracle
Informix
Sybase
MS-SQL
DB2
Cache
CUBRID
LDAP
ALTIBASE
Tibero
DB 문서들
스터디
Community
공지사항
자유게시판
구인|구직
DSN 갤러리
도움주신분들
Admin
운영게시판
최근게시물
Oracle Q&A 38782 게시물 읽기
No. 38782
Hot백업복구시 redo로그파일이 없다면, 어디까지 복구가능한가?
작성자
이태훈(goahead)
작성일
2011-08-16 14:08ⓒ
2011-08-16 14:10ⓜ
조회수
5,821

안녕하세요?
최근 회사 내 DB백업을 점검하다가 복구테스트를 진행해보기로 했습니다.
DB백업 스크립트가 적용된지 1년 남짓됐는데, 그 동안 복구테스트를 한번도 못해봤거든요.

 

백업은 각 DB장비마다 일주일에 한번 Hot백업을 받도록 되어있습니다.
그 전엔 정기점검때마다 Cold백업을 받았는데, 이전 DBA가 Hot백업적용하면서
Cold백업을 없애버렸지요.

 

DBA가 회사를 이직하고 공석인 상태라서, 복구테스트를 통해 복구방법도 좀 익혀둘 셈이었습니다.

그런데, Hot백업파일들을 테스트장비로 옮겨서 복구를 하던 중 문제가 생겼습니다.

Hot백업파일을 가지고 복구를 하기위해, control trace파일을 참조하여 control파일을 생성하는데
아래와 같은 에러가 떨어집니다.


-----------------  복구를 위해 control파일을 생성시도 ------------------------------

CREATE CONTROLFILE REUSE DATABASE "MOBILE" NORESETLOGS  ARCHIVELOG
    MAXLOGFILES 5
    MAXLOGMEMBERS 3
    MAXDATAFILES 100
    MAXINSTANCES 1
    MAXLOGHISTORY 907
LOGFILE
  GROUP 1 '/data/oradata/MOBILE/REDO/redo01.log'  SIZE 500M,
  GROUP 2 '/data/oradata/MOBILE/REDO/redo02.log'  SIZE 500M,
  GROUP 3 '/data/oradata/MOBILE/REDO/redo03.log'  SIZE 500M,
  GROUP 4 '/data/oradata/MOBILE/REDO/redo04.log'  SIZE 500M,
  GROUP 5 '/data/oradata/MOBILE/REDO/redo05.log'  SIZE 500M
DATAFILE
  '/data/oradata/MOBILE/SYS/system.dbf',
  '/data/oradata/MOBILE/UNDO/undotbs01.dbf',
<------------------- 중 략 ------------------>
CHARACTER SET KO16MSWIN949 ;

------------------  생성시도에 대한 결과 ----------------------------

ORA-01503: CREATE CONTROLFILE failed
ORA-01565: error in identifying file '/data/oradata/MOBILE/REDO/redo01.log'
ORA-27037: unable to obtain file status
Linux Error: 2: No such file or directory
Additional information: 3


흐흑..  Hot백업파일 중에는 redo 로그파일이 없는겁니다.
등에 식은땀이 흐릅니다.
여기서 질문드립니다.

1. Hot백업파일의 복구시, 백업시점의 redo 로그파일이 반드시 필요한가?
2. Hot백업파일의 복구시, redo 로그파일이 없다면 어디까지 복구가능한가?
 

이 글에 대한 댓글이 총 1건 있습니다.

먼저...

current redo log file 이 crash 되거나 문제가 발생하면.. cold backup 이건 hot backup 이건

backup 본에서 complete recovery 하는 것은 불가 합니다.

incomplete recovery 만이 가능합니다.

따라서 일반 datafile 의 crash의 경우 hot backup으로 complete recovery가 가능합니다.

두번째... hot backup 을 실행하게 되면... redo logfile 의 backup 은 불가합니다.

hot backup은 database가 기동중에 backup이 수행되므로 current redo logfile의 backup은 불가 하기 때문입니다.

세번째.... hot backup 받은 시점까지의 database 복구는 가능합니다. 먼저 hot backup을 받은 시점의 backup본에 백업 받은 archive log file을 적용시키면... archive log file이 존재 하는 시점까지의 데이터를 모두 복원 시키는 것이 가능합니다.

하지만... site 가 critical 하지 않거나 규모가 그리 크지 않다면... 한달에 한번쯤은 cold backup을 수행하시는 것이 좋을 듯 하네요.. archive log file과 함께 말이죠...

cold backup 에 archive log가 모두 존재 해 있으면 안전하게 원하시는 시점까지의 복원이 가능합니다.

나그네님이 2011-09-07 08:49에 작성한 댓글입니다. Edit
[Top]
No.
제목
작성자
작성일
조회
38785escape 문자에 관련하여 질문하나만 드리겠습니다. [1]
조용호
2011-08-17
3661
38784마농님 튜닝 부탁드립니다. [4]
이강실
2011-08-16
4884
38783두개의 쿼리가 결과값이 다른데...같게 맞추고 싶은데~~ [5]
한상원
2011-08-16
3972
38782Hot백업복구시 redo로그파일이 없다면, 어디까지 복구가능한가? [1]
이태훈
2011-08-16
5821
38781imp 오류 [2]
초보
2011-08-16
6774
38780SQL튜닝 부탁드립니다. [2]
jinkuidong
2011-08-15
5914
38779안녕하세요. 중복쿼리 1ROW 만들기 질문드립니다. [3]
질문자
2011-08-12
5712
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.021초, 이곳 서비스는
	PostgreSQL v16.4로 자료를 관리합니다