불완전 매체 복구 수행

취소에 준한 복구 수행
시간에 준한 복구 수행
변경 사항에 준한 복구 수행
매체 장애를 복구하는데 필요한 모든 작업을 이해하는데 있어 기본적인 복구 개념과 절차를 잘알아야 한다.
매체 장애가 일으킬 수 있는 다른 문제점의 상세한 목록과 각 문제점에 대한 적합한 복구 방법은 24-47페이지 참조. 


취소에 준한 복구 수행

1. 열린 데이터베이스를 SHUTDOWN ABORT하여 데이터베이스 종료.

2. 복구 절차 도중 요류가 발생할 경우를 대비하여 모든 데이터파일과 제어파일, 그리고 데이터변수의 매개변수 파일 등의 데이터베이스 전체 백업을 만든다.

3. 매체 장애가 발생하면 장애를 일으킨 하드웨어 문제를 해결한다.

4.복구가 계획된 시점 이후에 데이터파일이 추가되는 등의 이유로 현재 제어 파일이 복구가 계획된 시점에서 데이터베이스의 물리적 구조와 일치하지 않는다면 불완전 매체 복구 종료가 계획된 시점이서의 데이터베이스의 물리적 파일구조(데이터 파일 이름과 온라인 리두로그 파일 포함)를 반영하는 제어 파일 백업을 복원한다. 사용하기에 적합한 제어파일을 결정하려면 각각의 제어파일 백업뿐 아니라 현재 제어파일에 해당하는 파일 목록을 검토한다. 필요하다면 데이터베이스의 현재 제어 파일 전체를 올바른 제어 파일 백업과 바꾼다. 대안으로 누락된 파일 대신 새 제어파일을 생성할 수 있다.
주: 데이터베이스의 제어파일이 작동하지 않거나 제어 파일 백업으로 바뀌어야 하는 경우 CONROL_FILES 매개변수를 수정하려면 데이터베이스와 연관된 매개변수 파일을 편집해야 한다.

5. 데이터베이스의 모든 데이터 파일의 백업파일을 복원한다. 기존 데이터파일을 바꾸는데 사용되는 모든 백업 파일은 복구가 계획된 시점전에 만들어져야 한다. 특정 데이터파일의 백업이 없다면 복구될 수 있는 빈 대체 파일을 생성할 수 있다. 데이터 파일이 복구가 계획된 시점 이후에 추가된 경우 복구가 완료되면 이 파일은 더 이상 데이터베이스에서 사용되지 않으므로 이 파일의 백업을 복원하지 않아도 된다. 매체 장애를 일으킨 하드웨어 문제를 해결하고 모든 데이터 파일을 원래위치로 복원할 수 있다면 파일을 원래 위치에 복원한다. 그리고 이 절차의 8단계로 건더 뛴다. 하드웨어 문제가 해결되지 않으면 손상된 데이터 파일을 대체 저장 영역 장치로 복원한다.
주:제어 파일 백업을 사용할 경우 읽기 전용 테이블스페이스의 파일은 오프라인으로 설정되어야 한다. 그렇지 않으면 복구하면서 읽기 전용 파일의 헤더를 갱신하려고 한다. 

6. Server Manager를 시작하고 관리자 권한으로 오라클에 접속

7. 새인스턴스를 시작하고 데이터베이스를 마운트한다. Server Manager 의 [Database Startup]대화 상자에서 [Startup Mount]라디오 단추를 선택하거나 STARTUP 명령에 MOUNT옵션을 사용하여 이 작업을 수행할 수 있다.

8. 5단계에서 하나 이상의 손상된 데이터베이스 파일이 대체 위치에 복원되면 이 파일의 새위치가 연관된 데이터베이스의 제어 파일에 나타나야 한다.

9. 제어 파일 백업이 불완전 복구(즉 4단계에서 복원된 제어 파일 백업이나 재생성된 제어 파일)에 사용되면 복구하는데 사용된 대화 상자나 명령어에 USING BACKUP CONTROLFILE 매개변수를 지정하여 이를 나타내야 한다.

10. Server Manager의 [Apply Revovery Archive] 대화 상자나 동일한 기능의 RECOVER DATABASE UNTIL CANCEL 명령문을 사용하여 취소에 준한 복구를 시작한다.

11. 오라클은 복원데 데이터 파일을 재구축하는데 필요한 아카이브된 온라인 리두로그를 적용하여 매체 복구의 롤 포워드 단계를 시작한다. 파일 적용이 자동화되지 않으면 오라클은 LOG_ARCHIVE_DEST에서 찾을 수 있다고 생각되는 이름을 제공하고 사용자에게 로그파일을 계속 적용할 것인 지의 여부를 묻는다. 제어 파일이 백업 파일일 경우에는 사용자가 온라인 로그 이름을 제공한다.
오라클은 리두로그 파일을 계속 적용한다.

12. 최근의 손상되지 않은 리두 로그 파일이 복원된 데이터 파일에 적용될 때까지 리두로그 파일을 계속 적용한다.

13. 오라클이 손상된 파일 직전의 리두로그 파일을 적용하면 복구 취소를 위해 "CANCEL"을 입력하여 최소에 준한 복구를완료한다.
오라클은 복구되었는 지의 여부를 나타내는 메시지를 돌려준다.

▶ 취소에 준한 복구 후 데이터베이스 열기
불완전 매체 복구 후에 처음으로 데이터베이스를 열 경우 RESETLOGS나 NORESETLOGS옵션 중 하나를 포함하여 로그 시퀀스 번호의 재설정 여부를 명백하게 지정해야 한다. 리두 로그를 재설정하면 다음과 같은 상황이 발생한다.
-복구하는 동안 적용되지 않은 모든 리두 정보를 버려 적용되지 않도록 한다.
- 온라인 리두 로그와 리두 스레드에 대한 제어 파일 정보를 다시 초기화한다.
- 온라인 리두로그의 내용을 지운다.
- 현재 온라인 리두 로그 파일이 없다면 온라인 리두로그 파일을 생성한다.
-로그 시퀀시 번호를 1로 재설정한다. 

시간에준한 복구 수행

시간에 준한 불완전 매체 복구를 수행하며 제어 파일 백업으로 복구하고 읽기 전용 테이블스페이스가 있는 경우 이 복구 절차를 수행하기 전에 오라클 기술 지원 센터에 문의
1. 데이터베이스가 열린 상태에서 불완전 복구를 수행해야 할 경우 SHUTDOWN명령어의 ABORT옵션을 사용하여 데이터베이스를 종료한다.

2.복구 절차 중에 발생할 수 있는 오류에 대비하여 데이터베이스의 모든 데이터 파일과 제어파일, 매개변수 파일의 전체 백업을 수행한다.

3. 매체 장애가 발생하면 장애를 일으킨 하드웨어 문제를 해결한다.

4.복구가 계획된 시점 이후에 데이터파일이 추가되는 등의 이유로 현재 제어 파일이 복구가 계획된 시점에서 데이터베이스의 물리적 구조와 일치하지 않는다면 불완전 매체 복구 종료가 계획된 시점이서의 데이터베이스의 물리적 파일구조(데이터 파일 이름과 온라인 리두로그 파일 포함)를 반영하는 제어 파일 백업을 복원한다. 적합하게 사용할 수 있는 제어 파일을 결정하려면 현재 제어 파일에 해당하는 파일 목록과 각각의 제어 파일 백업을 검사한다. . 필요하다면 데이터베이스의 현재 제어 파일 전체를 올바른 제어 파일 백업과 바꾼다. 대안으로 누락된 파일 대신 새 제어파일을 생성할 수 있다.
주: 데이터베이스의 제어파일이 작동하지 않거나 제어 파일 백업으로 바뀌어야 하는 경우 CONROL_FILES 매개변수를 수정하려면 데이터베이스와 연관된 매개변수 파일을 편집해야 한다.

5. 데이터베이스의 모든 데이터 파일의 백업파일을 복원한다. 기존 데이터파일을 바꾸는데 사용되는 모든 백업 파일은 복구가 계획된 시점전에 만들어져야 한다. 특정 데이터파일의 백업이 없다면 복구될 수 있는 빈 대체 파일을 생성할 수 있다. 복구 시점 이후에 추가된 데이터 파일이 있다면 이 파일은 복구 완료 후에는 더 이상 데이터베이스에서 사용되지 않으므로 이 파일의 백업을 복원하지 않아도 된다.. 매체 장애를 일으킨 하드웨어 문제를 해결하고 모든 데이터 파일을 원래위치로 복원할 수 있다면 파일을 원래 위치에 복원한다. 그리고 이 절차의 8단계로 건더 뛴다. 하드웨어 문제가 해결되지 않으면 손상된 데이터 파일을 대체 저장 영역 장치로 복원한다.
주:제어 파일 백업을 사용할 경우 읽기 전용 테이블스페이스의 파일은 오프라인으로 설정해야 한다. 그렇지 않으면 복구시 읽기 전용 파일의 헤더를 갱신하려고 한다. 

6. Server Manager를 시작하고 관리자 권한으로 오라클에 접속

7. 새인스턴스를 시작하고 데이터베이스를 마운트한다. Server Manager 의 [Database Startup]대화 상자에서 [Startup Mount]라디오 단추를 선택하거나 STARTUP 명령에 MOUNT옵션을 사용하여 이 작업을 수행할 수 있다.

8. 5단계에서 하나 이상의 손상된 데이터베이스 파일이 대체 위치에 복원되면 이 파일의 새위치가 연관된 데이터베이스의 제어 파일에 나타나야 한다.

9. 오프라인 테이블스페이스가 정상적으로 오프라인으로 설정되지 않았다면 데이터베이스의 모든 데이터 파일은 온라인 상태여야 한다. 복구할 메든 데이터 파일 이름은 온라인 상태여야 한다. 복구할 모든 에이터 파일 이름을 알려면 사용중인 제어 파일에 수반되는 데이터 파일 목록을 검사하거나 V$DATAFILE 뷰를 질의한다. 그런 대음 데이터베이스의 모든 데이터 파일을 온라인으로 설정하려면 ALTER DATABASE 명령어에 DATAFILE ONLINE 옵션을 사용한다.
예)USER1이라는 데이터 파일을 온라인으로 설정하려면 다음 명령문을 입력.
ALTER DATABASE DATAFIEL users1' ONLINE;

제어파일 백업이 불완전 복구에서 사용된 경우 (즉 제어 파일 백업 또는 재생성된 제어 파일이 복원된 경우) 복구하는데 사용된 대화 상자나 명령어에 이를 나타낸다. 특정 데이터 파일이 이미 온라인 상태라면 Oracle은 명령문을 무시한다.

10. 시간에 준한 복구를 시작하려면 RECOVER DATABASE UNTIL TIME 명령문을 실행한다. 시간은 작은 따옴표로 구분된 다음 형식을 사용하여 지정된다.
'YYYY-MM-DD:HH24:MI:SS'

11. 오라클은 복원데 데이터 파일을 재구축하는데 필요한 아카이브된 온라인 리두로그를 적용하여 매체 복구의 롤 포워드 단계를 시작한다. 파일 적용이 자동화되지 않으면 오라클은 LOG_ARCHIVE_DEST에서 찾을 수 있다고 생각되는 이름을 제공하고 사용자에게 로그파일을 계속 적용할 것인 지의 여부를 묻는다. 제어 파일이 백업 파일일 경우에는 사용자가 온라인 로그 이름을 입력해야 한다.
오라클은 리두로그 파일을 계속 적용한다.

12. 마지막으로 필요한 리두 로그 파일이 복원된 데이터 파일에 적용될 때까지 리두 로그 파일을 계속 적용한다. Oracle은 정확한 시간에 도달했을 때 자동으로 복구를 종료하고 복구되었는 지의 여부를 나타내는 메시지를 돌려준다.

취소에 준한 복구 후 데이터베이스 열기
불완전 매체 복구 후에 처음으로 데이터베이스를 열 경우 RESETLOGS나 NORESETLOGS옵션 중 하나를 포함하여 로그 시퀀스 번호의 재설정 여부를 명백하게 지정해야 한다. 리두 로그를 재설정하면 다음과 같은 상황이 발생한다.
-복구하는 동안 적용되지 않은 모든 리두 정보를 버려 적용되지 않도록 한다.
- 온라인 리두 로그와 리두 스레드에 대한 제어 파일 정보를 다시 초기화한다.
- 온라인 리두로그의 내용을 지운다.
- 현재 온라인 리두 로그 파일이 없다면 온라인 리두로그 파일을 생성한다.
-로그 시퀀시 번호를 1로 재설정한다.

변경 사항에 준한 복구 수행

1. 열린 데이터베이스를 SHUTDOWN ABORT하여 데이터베이스 종료.

2. 복구 절차 도중 요류가 발생할 경우를 대비하여 모든 데이터파일과 제어파일, 그리고 데이터변수의 매개변수 파일 등의 데이터베이스 전체 백업을 만든다.

3. 매체 장애가 발생하면 장애를 일으킨 하드웨어 문제를 해결한다.

4.복구가 계획된 시점 이후에 데이터파일이 추가되는 등의 이유로 현재 제어 파일이 복구가 계획된 시점에서 데이터베이스의 물리적 구조와 일치하지 않는다면 불완전 매체 복구 종료가 계획된 시점에서의 데이터베이스의 물리적 파일구조(데이터 파일 이름과 온라인 리두로그 파일 포함)를 반영하는 제어 파일 백업을 복원한다. 사용하기에 적합한 제어파일을 결정하려면 각각의 제어파일 백업뿐 아니라 현재 제어파일에 해당하는 파일 목록을 검토한다. 필요하다면 데이터베이스의 현재 제어 파일 전체를 올바른 제어 파일 백업과 바꾼다. 대안으로 누락된 파일 대신 새 제어파일을 생성할 수 있다.
주: 데이터베이스의 제어파일이 작동하지 않거나 제어 파일 백업으로 바뀌어야 하는 경우 CONROL_FILES 매개변수를 수정하려면 데이터베이스와 연관된 매개변수 파일을 편집해야 한다.

5. 데이터베이스의 모든 데이터 파일의 백업파일을 복원한다. 기존 데이터파일을 바꾸는데 사용되는 모든 백업 파일은 복구가 계획된 시점전에 만들어져야 한다. 특정 데이터파일의 백업이 없다면 복구될 수 있는 빈 대체 파일을 생성할 수 있다. 데이터 파일이 복구가 계획된 시점 이후에 추가된 경우 복구가 완료되면 이 파일은 더 이상 데이터베이스에서 사용되지 않으므로 이 파일의 백업을 복원하지 않아도 된다. 매체 장애를 일으킨 하드웨어 문제를 해결하고 모든 데이터 파일을 원래위치로 복원할 수 있다면 파일을 원래 위치에 복원한다. 그리고 이 절차의 8단계로 건더 뛴다. 하드웨어 문제가 해결되지 않으면 손상된 데이터 파일을 대체 저장 영역 장치로 복원한다.
주:제어 파일 백업을 사용할 경우 읽기 전용 테이블스페이스의 파일은 오프라인으로 설정되어야 한다. 그렇지 않으면 복구하면서 읽기 전용 파일의 헤더를 갱신하려고 한다. 

6. Server Manager를 시작하고 관리자 권한으로 오라클에 접속

7. 새인스턴스를 시작하고 데이터베이스를 마운트한다. Server Manager 의 [Database Startup]대화 상자에서 [Startup Mount]라디오 단추를 선택하거나 STARTUP 명령에 MOUNT옵션을 사용하여 이 작업을 수행할 수 있다.

8. 5단계에서 하나 이상의 손상된 데이터베이스 파일이 대체 위치에 복원되면 이 파일의 새위치가 연관된 데이터베이스의 제어 파일에 나타나야 한다.

9. 복구한 모든 데이터 파일 이름을 얻으려면 사용 중인 제어 파일에 수반되는 데이터 파일 목록을 검사하거나 V$DATAFILE 뷰를 질의한다. 그런 다음 ALTER DATABASE 명령어에 DATAFILE ONLINE옵션을 사용하여 데이터베이스의 모든 데이터 파일을 온라인으로 설정한다.
예) USER1이라는 데이터 파일을 온라인으로 설정하려면 다음 명령문을 입력.
ALTER DATABASE DATAFIEL users1' ONLINE;

제어파일 백업이 불완전 복구에서 사용된 경우 (즉 제어 파일 백업 또는 재생성된 제어 파일이 복원된 경우) 복구하는데 사용된 대화 상자나 명령어에 이를 나타낸다. 특정 데이터 파일이 이미 온라인 상태라면 Oracle은 명령문을 무시한다.

10. 변경사항에 준한 복구를 시작하려면 RECOVER DATABASE UNTIL CHANGE명령문을 실행한다. SCN은 따옴표 없는 십진수로 지정된다.

11. 오라클은 복원데 데이터 파일을 재구축하는데 필요한 아카이브된 온라인 리두로그를 적용하여 매체 복구의 롤 포워드 단계를 시작한다. 파일 적용이 자동화되지 않으면 오라클은 LOG_ARCHIVE_DEST에서 찾을 수 있다고 생각되는 이름을 제공하고 사용자에게 로그파일을 계속 적용할 것인 지의 여부를 묻는다. 제어 파일이 백업 파일일 경우에는 사용자가 온라인 로그 이름을 제공한다.
오라클은 리두로그 파일을 계속 적용한다.

12.필요한 리두 로그 파일이 복원된 데이터 파일에 모두 적용될 때까지 리두로그 파일을 계속 적용한다. 오라클은 자동으로 정확한 시간에 도달했을 때 복구를 종료하고 복구되었는 지의 여부를 나타내는 메시지를 돌려준다.

변경 사항에 준한 복구 후 데이터베이스 열기
불완전 매체 복구 후에 처음으로 데이터베이스를 열 경우 RESETLOGS나 NORESETLOGS옵션 중 하나를 포함하여 로그 시퀀스 번호의 재설정 여부를 명백하게 지정해야 한다. 리두 로그를 재설정하면 다음과 같은 상황이 발생한다.
-복구하는 동안 적용되지 않은 모든 리두 정보를 버려 적용되지 않도록 한다.
- 온라인 리두 로그와 리두 스레드에 대한 제어 파일 정보를 다시 초기화한다.
- 온라인 리두로그의 내용을 지운다.
- 현재 온라인 리두 로그 파일이 없다면 온라인 리두로그 파일을 생성한다.
-로그 시퀀시 번호를 1로 재설정한다.