어떻게 불완전한 복구 후 스킵 테이블 스페이스를 복구하는 방법? (문서 ID 1561645.1)
적용 대상 :
오라클 데이터베이스 - 엔터 프라이즈 에디션 - 버전 11.2.0.1 이후
오라클 데이터베이스 클라우드 스키마 서비스 - 버전 N / A 이후
오라클 데이터베이스 엑사 익스프레스 클라우드 서비스 - 버전 N / A 이후
오라클 데이터베이스 엑사 클라우드 기계 - 버전 N / A 이후
오라클 클라우드 인프라 - 데이터베이스 서비스 - 버전 N / A 이후
이 문서의 정보는 모든 플랫폼에 적용됩니다.
골
어떻게 한 후 스킵 테이블 스페이스를 복구하는 불완전 복구.
어떻게 불완전 복구 테이블 스페이스 후 건너 복원하려면
건너 뛴 데이터 파일이됩니다 RESETLOGS 후 오프라인으로보고 불완전 복구에서 수행.
RESETLOGS의 완료가 완전히 회복되지 않았다 후, 데이터 파일은 건너 뜁니다 오프라인 상태로보고
SQL> V의 $의 recover_file SELECT * FROM; 파일 # 온라인 ONLINE_ ERROR 변경 # 시간 ---------- ------- ------- ------------------ ----------------------------------------------- --- ------- -------------------- 6 OFFLINE OFFLINE UNKNOWN 오류 2,386,984 13 6 월 2013 22시 52분 39초
당신이있는 경우에이 문서는 좋은를 보유하고 건너 뛴 테이블의 유효한 백업을.
유효한 백업이 테이블 공간을 생략하는 경우,이 책은 매우 유용합니다
해결책
이 문서의 목적을 위해, 다음과 같은 가상의 환경이 절차를 설명하기 위해 예제로 사용 :
데이터베이스 이름 : PRODDB
테이블 이름 :하면 ProdData
디렉토리 위치 : U01 / 응용 프로그램 / oradb1
********
복원하고 데이터베이스를 RESETLOGS을 연 상태도 건너 뛴 테이블 스페이스를 복구 할 수 있습니다.
데이터베이스가 열려있는 경우에도, 또한 복원하고 건너 뛴 테이블 스페이스를 복구 할 수 있습니다 RESETLOGS.
우리는 항상 백업을 테스트하는 것이 좋습니다 가장 좋은 방법은 환경과 복구 시나리오를 복원합니다.
가장 좋은 방법은, 우리는 항상 당신이 당신의 백업 환경, 감소 및 복구 프로그램을 테스트하는 것이 좋습니다
이 메모에서 우리는 테이블 스페이스하면 ProdData을 건너 뛰는 것
이 메모에서, 우리는 테이블 공간을 건너 뜁니다하면 ProdData
데이터베이스 구조 및 백업 데이터베이스 구조 및 백업
우리는 다음과 같은 테이블이 있고 전체 백업을 수행한다고 가정 :
우리는 다음과 같은 테이블 스페이스가 있다고 가정하고 전체 백업되었습니다
SQL>를 선택 TABLESPACE_NAME, FILE_NAME, 1로 DBA_DATA_FILES 순서에서 상태; TABLESPACE_NAME FILE_NAME 상태 -------------------- --------------------------- ------------------------------------------- ------- - 예 /u01/app/oradb1/oradata/PRODDB/datafile/o1_mf_example_8vg997t4_.dbf AVAILABLE 하면 ProdData /u01/app/oradb1/oradata/PRODDB/datafile/o1_mf_proddata_8vg9jlk1_.dbf 이용 가능한 SYSAUX / U01 / 응용 프로그램 / oradb1 / ORADATA / PRODDB / 데이터 파일 / o1_mf_sysaux_8vg997qs_.dbf 이용 가능한 사용할 수있는 시스템 /u01/app/oradb1/oradata/PRODDB/datafile/o1_mf_system_8vg997sd_.dbf 이용 가능한 UNDOTBS1 /u01/app/oradb1/oradata/PRODDB/datafile/o1_mf_undotbs1_8vg997wc_.dbf USERS /u01/app/oradb1/oradata/PRODDB/datafile/o1_mf_users_8vg997xp_.dbf 이용 가능한 USERS / U01 / 응용 프로그램 / oradb1 / ORADATA / PRODDB / 데이터 파일 / o1_mf_users_8vg997vg_.dbf AVAILABLE 7 행 선택. $ RMAN 대상 / 복구 관리자 : 릴리스 11.2.0.3.0 - 목 6월 13일 22시 43분 27초 2013 년 생산 저작권 (C) 1982, 2011, Oracle 및 / 또는 그 계열사. 판권 소유. 대상 데이터베이스에 접속 : PRODDB (DBID = 552,982,679) RMAN> 백업 데이터베이스 플러스 ARCHIVELOG; ... 조각 핸들 = / U01 / 응용 프로그램 / oradb1 / fast_recovery_area / PRODDB / 백업 세트 / 2013_06_13 / o1_mf_nnndf_TAG20130613T224932_8vmhywt8_.bkp 태그 = TAG20130613T224932 코멘트 = NONE의 채널 ORA_DISK_1 : 백업 세트 완료, 경과 시간 : 0시 1분 5초 (13) 6 월-13에서 완료 백업 (13) 6 월-13에서 제어 파일과 SPFILE 자동 백업을 시작 조각 핸들 = /u01/app/oradb1/fast_recovery_area/PRODDB/autobackup/2013_06_13/o1_mf_s_818031037_8vmj0y3g_.bkp 주석 = NONE 완료 제어 파일과 SPFILE 자동 백업 (13) 6 월-13에서
스킵 테이블 스페이스와 불완전 복구. 유무는 테이블 스페이스가 완전히 복원되지 않습니다 생략
/ 복구를 사용하기 위해 온라인 데이터베이스의 휴식을 취 복원 중에 테이블 스페이스를 건너 뜁니다.
/ 복구를 복원하는 동안 건너 뛰기 테이블 스페이스 그래서 데이터베이스 온라인 사용의 나머지
$ RMAN 대상 / 복구 관리자 : 릴리스 11.2.0.3.0 - 목 6월 13일 22시 54분 8초 2013 년 생산 저작권 (C) 1982, 2011, Oracle 및 / 또는 그 계열사. 판권 소유. 대상 데이터베이스에 접속 : PRODDB (DBID = 552,982,679, 금지) RMAN> 실행 { 세트까지 서열 10; 데이터베이스 건너 뛰기 테이블 스페이스하면 ProdData을 복원; 데이터베이스 건너 뛰기 테이블 스페이스하면 ProdData를 복구; } 명령을 실행 : 절까지 SET 13 6 월 13에 복원 시작 대신 복구 카탈로그의 대상 데이터베이스 제어 파일 사용 ORA_DISK_1 : 분배 채널 채널 ORA_DISK_1 : SID = 20 장치 유형 = DISK 채널 ORA_DISK_1을 : 데이터 파일 백업 세트 복원 시작 채널 ORA_DISK_1는 : 데이터 파일 (들)을 지정하여 백업 세트에서 복원 채널 ORA_DISK_1 님 / U01 / 응용 프로그램 / oradb1 / ORADATA / PRODDB / 데이터 파일 / o1_mf_users_8vg997vg_ 00007 데이터 파일 복원. DBF 채널 ORA_DISK_1 : /u01/app/oradb1/oradata/PRODDB/datafile/o1_mf_system_8vg997sd_.dbf에 00001 데이터 파일 복원 /u01/app/oradb1/oradata/PRODDB/datafile/o1_mf_sysaux_8vg997qs_.dbf에 00002 데이터 파일 복원 : 채널 ORA_DISK_1 채널 ORA_DISK_1 : 복원 /u01/app/oradb1/oradata/PRODDB/datafile/o1_mf_undotbs1_8vg997wc_.dbf에 데이터 파일 00003 채널 ORA_DISK_1 : 00004 /u01/app/oradb1/oradata/PRODDB/datafile/o1_mf_users_8vg997xp_.dbf에 데이터 파일 복원 채널 ORA_DISK_1 : 00005 데이터 파일 /로 복원 U01 / 응용 프로그램 / oradb1 / ORADATA / PRODDB / 데이터 파일 / o1_mf_example_8vg997t4_.dbf 채널 ORA_DISK_1 : 백업 조각 /u01/app/oradb1/fast_recovery_area/PRODDB/backupset/2013_06_13/o1_mf_nnndf_TAG20130613T222311_8vmgfhjm_.bkp에서 읽는 채널 ORA_DISK_1 : 조각 손잡이 = / U01 / 응용 프로그램 / oradb1 / fast_recovery_area / PRODDB / 백업 세트 / 2013_06_13 / o1_mf_nnndf_TAG20130613T222311_8vmgfhjm_.bkp 태그 = TAG20130613T222311 채널 ORA_DISK_1 : 복원 된 백업 조각 1 채널 ORA_DISK_1 : 전체, 경과 시간을 복원 0시 0분 57초 완료 13 6 월 13에 복원 (13) 6 월-13에서 복구 시작 채널 ORA_DISK_1를 사용하여 실행 : ALTER 데이터베이스를 6 오프라인 데이터 파일 - - >>> (이렇게하면 ProdData위한 데이터 파일이다) 미디어 복구를 시작할 순서 8 스레드 1 아카이브 로그 파일 /u01/app/oradb1/fast_recovery_area/PRODDB/archivelog/2013_06_13/o1_mf_1_8_8vmghjn4_.arc과 같이 디스크에 이미 파일 /u01/app/oradb1/fast_recovery_area/PRODDB/archivelog/2013_06_13/o1_mf_1_9_8vmhrdnv_.arc과 같이 순서 9 스레드 1 아카이브 로그가 디스크에 이미 보관 된 로그 파일 이름 = / U01 / 응용 프로그램 / oradb1 / fast_recovery_area / PRODDB / 아카이브 로그 / 2013_06_13 / o1_mf_1_8_8vmghjn4_.arc 스레드 = 1 시퀀스 = 8 아카이브 로그 파일 이름 = / U01 / 응용 프로그램 / oradb1 / fast_recovery_area / PRODDB / 아카이브 로그 / 2013_06_13 / o1_mf_1_9_8vmhrdnv_.arc 스레드 = 1 시퀀스 = 9 미디어 복구 완료, 경과 시간 00:00 : 00 완료 13 6 월-13에서 복구 SQL> ALTER 데이터베이스 개방 RESETLOGS; 데이터베이스 변경. 2 온라인 3 온라인 SQL> 파일 선택 #, V의 $ 데이터 파일의 상태; FILE # 1 STATUS ---------- ------- 1 SYSTEM ONLINE 4 ONLINE 5 OFFLINE 6 7 ONLINE 7 행 선택. SQL> V의 $의 recover_file SELECT * FROM; 파일 # 온라인 ONLINE_ ERROR 변경 # 시간 ---------- ------- ------- ------------------ ----------------------------------------------- --- ------- -------------------- 6 OFFLINE OFFLINE UNKNOWN 오류 2,386,984 13 6 월 2013 22시 52분 39초
건너 뛴 테이블 '데이터 파일'은 오프라인 상태입니다 및 다른 모든 '데이터 파일은 온라인이다. 다른 모든'데이터 파일 '이 온라인 상태에있는 동안 건너 뛴 테이블'데이터 파일 ', 오프라인 상태입니다
# V의 $의 테이블을 보여줍니다 테이블 '하면 ProdData'는 여전히 사전 및 사용할 수에 정의되어
V $ 테이블 디스플레이 공간은 '하면 ProdData'여전히 사전 테이블을 정의 할 수있다
SQL> 브이 $ 테이블에서 선택 *;
생략 된 테이블의 복구 수행. 건너 뛴 복구 테이블 스페이스를 실행 된
당신이 필요합니다 새 / 현재 데이터베이스 화신 데리러 RESETLOGS 후 데이터베이스 화신 단위로, 아래로 RMAN 세션을 재 - 시작 :
아래 그림과 같이 새로운 데이터베이스의 화신을 얻기 / 현재 데이터베이스의 RESETLOGS 화신 후 증가와 함께, 당신은 RMAN 세션을 다시 시작해야합니다
$ RMAN 대상 / 복구 관리자 : 릴리스 11.2.0.3.0 - 목 6월 13일 23시 3분 24초 2013 년 생산 저작권 (C) 1982, 2011, Oracle 및 / 또는 그 계열사. 판권 소유. 대상 데이터베이스에 연결 : PRODDB (DBID = 552,982,679) RMAN> 실행 { 테이블 스페이스하면 ProdData을 복원; 테이블 스페이스하면 ProdData를 복구; } RMAN> 13 6 월 13에 복원 시작 대신 복구 카탈로그의 대상 데이터베이스 제어 파일을 사용하여 분배 채널 : ORA_DISK_1 채널 ORA_DISK_1 : SID = 17 장치 유형 = DISK 채널 ORA_DISK_1을 : 시작 데이터 파일 백업 세트 복원 채널 ORA_DISK_1을 : 데이터 파일을 지정하여 (S) 백업 세트에서 복원 채널 ORA_DISK_1 : /u01/app/oradb1/oradata/PRODDB/datafile/o1_mf_proddata_8vg9jlk1_.dbf에 00006 데이터 파일 복원 채널 ORA_DISK_1 : 백업 조각 /u01/app/oradb1/fast_recovery_area/PRODDB/backupset/2013_06_13/o1_mf_nnndf_TAG20130613T222311_8vmgfhjm_.bkp에서 읽기 채널 ORA_DISK_1 : 종 = 핸들 / U01 / 애플리케이션 / oradb1 / fast_recovery_area / PRODDB / 백업 세트 / 2013_06_13 / o1_mf_nnndf_TAG20130613T222311_8vmgfhjm_.bkp 태그 = TAG20130613T222311 채널 ORA_DISK_1는 : 복원 된 백업 조각 한 채널 ORA_DISK_1는 : 전체 경과 시간을 복원 0시 0분 1초는 13에 복원 완료 -JUN 13 RMAN> 13 6 월 13에서 복구 시작 채널 ORA_DISK_1 사용 미디어 복구 시작 를 위해 로그를 보관 순서 8 스레드 1 파일 /u01/app/oradb1/fast_recovery_area/PRODDB/archivelog/2013_06_13/o1_mf_1_8_8vmghjn4_.arc로 디스크에 이미 순서 9 스레드 1 아카이브 로그 파일 /u01/app/oradb1/fast_recovery_area/PRODDB/archivelog/2013_06_13/o1_mf_1_9_8vmhrdnv_.arc과 같이 디스크에 이미 순서 1 스레드 1에 대한 로그를 보관 파일 / U01 / 응용 프로그램과 같은 디스크에 이미 /oradb1/fast_recovery_area/PRODDB/archivelog/2013_06_13/o1_mf_1_1_8vmjofl8_.arc는 파일 /u01/app/oradb1/fast_recovery_area/PRODDB/archivelog/2013_06_13/o1_mf_1_2_8vmjoh19_.arc과 같이 디스크에 이미 순서 2 스레드 1에 대한 로그를 보관 보관 된 로그 파일 이름은 = / U01 / 응용 프로그램 / oradb1 / fast_recovery_area / PRODDB / 아카이브 로그 / 2013_06_13 / o1_mf_1_8_8vmghjn4_. 아크 실 = 1 시퀀스 = 8 로그 파일 이름을 보관 = / U01 / 애플리케이션 / oradb1 / fast_recovery_area / PRODDB / ARCHIVELOG / 2013_06_13 / o1_mf_1_9_8vmhrdnv_.arc 실 = 1 개 = 서열 9 미디어 복구 완료 경과 시간 : 00:00:00 완료 6 월 13 일 13시 복구 SQL> * 선택할 V의 $의 recover_file; 행이 선택되지 SQL> 파일 선택 #, V의 $ 데이터 파일의 상태; FILE # 1 STATUS ---------- ------- 1 SYSTEM ONLINE 2 3 ONLINE ONLINE 4 5 ONLINE 6 OFFLINE ONLINE 7 선택된 7 행. SQL> ALTER 테이블 스페이스하면 ProdData 온라인; 테이블 변경. SQL> 파일 선택 #, V의 $ 데이터 파일의 상태; 파일 # 상태 ------- -------- 1 SYSTEM 2 ONLINE 3 ONLINE 4 ONLINE 5 ONLINE 6 ONLINE 7 ONLINE 선택된 7 행.
생략 된 테이블 스페이스의 모든 데이터 파일의 불완전한 회복 "할 때까지 세트"는 이전에 지정한까지 수행되고 테이블 스페이스 사용을 위해 온라인으로 할 수있다.
완전히 '까지 세트 "이전에 지정 될 때까지, 모든 데이터 파일은 테이블 공간을 생략 복구 안 함 및 테이블 스페이스를 온라인으로 사용할 수 있습니다