본문 바로가기

Programing/Oracle

Oracle - ARCHIVE 모드에서 복구 , switch

###################################################
                    ARCHIVE 모드에서 복구
                                                2008.07.08
###################################################

1. 아카이브 모드로 변경

SQL> archive log list
ORA-01031: 권한이 불충분합니다
SQL> conn sys/oracle as sysdba
연결되었습니다.
SQL> archive log list
데이터베이스 로그 모드              아카이브 모드
자동 아카이브             사용
아카이브 대상            C:\oracle\oradata\ORCL1\archive
가장 오래된 온라인 로그 순서     4
아카이브할 다음 로그   6
현재 로그 순서           6
SQL>


2. 복구는 동기화 번호 일치하는 방향으로 진행한다.

복원 (restore) : 초기 상태로 되돌림
복구 (recovery) : 현재 사용할 수 있긴 하나 비정상이므로 정상 상태로 되돌림

3. ED SWTICH

ALTER SYSTEM SWITCH LOGFILE;
ALTER SYSTEM SWITCH LOGFILE;
ALTER SYSTEM SWITCH LOGFILE;
ALTER SYSTEM SWITCH LOGFILE;
ALTER SYSTEM SWITCH LOGFILE;
ALTER SYSTEM SWITCH LOGFILE;
ALTER SYSTEM SWITCH LOGFILE;
ALTER SYSTEM SWITCH LOGFILE;
ALTER SYSTEM SWITCH LOGFILE;
SELECT MAX(SEQUENCE#) "LSN" FROM V$LOG;

4.
SQL> @SWITCH

시스템이 변경되었습니다.
시스템이 변경되었습니다.
시스템이 변경되었습니다.
시스템이 변경되었습니다.


시스템이 변경되었습니다.


시스템이 변경되었습니다.


시스템이 변경되었습니다.


시스템이 변경되었습니다.


시스템이 변경되었습니다.


       LSN
----------
        15

5. 현재 SCOTT 의 테이블 상태

 SELECT TABLE_NAME, TABLESPACE_NAME
 FROM DBA_TABLES
 WHERE OWNER = 'SCOTT'
 AND TABLE_NAME = 'DEPT'

 TABLE_NAME                     TABLESPACE_NAME
------------------------------ ------------------------------
DEPT                           USERS

6. 복구 시나리오~

SQL> -- OFFLINE BACKUP . ARCHIVE LOG MODE
SQL> -- 원인 : USERS01.DBF 가 유실된 상태
SQL> -- 1. 정상 운영중
SQL> INSERT INTO SCOTT.DEPT
  2  VALUES (1,'S1','S1');

1 개의 행이 만들어졌습니다.

SQL> COMMIT;

커밋이 완료되었습니다.

SQL> @SWITCH

시스템이 변경되었습니다.


시스템이 변경되었습니다.


시스템이 변경되었습니다.


시스템이 변경되었습니다.


시스템이 변경되었습니다.


시스템이 변경되었습니다.


시스템이 변경되었습니다.


시스템이 변경되었습니다.


시스템이 변경되었습니다.


       LSN
----------
        24

7.
SQL> -- 2. 장애 유도
SQL> SHUTDOWN ABORT
ORACLE 인스턴스가 종료되었습니다.
SQL> EXIT
Oracle9i Enterprise Edition Release 9.2.0.1.0 - Production
With the Partitioning, OLAP and Oracle Data Mining options
JServer Release 9.2.0.1.0 - Production에서 분리되었습니다.

C:\>DEL C:\oracle\oradata\ORCL1\USERS01.DBF    -- 일부러 삭제한다.

C:\>SQLPLUS "SYS/ORACLE AS SYSDBA"

SQL*Plus: Release 9.2.0.1.0 - Production on 화 Jul 8 16:58:19 2008

Copyright (c) 1982, 2002, Oracle Corporation.  All rights reserved.

휴지 인스턴스에 접속되었습니다.

SQL>


8. 장애 상황 발생!!!!!

SQL> STARTUP
ORACLE 인스턴스가 시작되었습니다.

Total System Global Area  126950220 bytes
Fixed Size                   453452 bytes
Variable Size             109051904 bytes
Database Buffers           16777216 bytes
Redo Buffers                 667648 bytes
데이터베이스가 마운트되었습니다.
ORA-01157: 데이터 9 파일을 식별 또는 잠금 할 수 없습니다- DBWR 추적 파일을
보십시오
ORA-01110: 9 데이터 파일: 'C:\ORACLE\ORADATA\ORCL1\USERS01.DBF'


9. 장애가 나면 무조건 ALERT 파일이나 TRACE 파일을 찾아본다.
SQL> C:\oracle\admin\ORCL1\bdump\alert_orcl1.log

.
.
.
.ue Jul 08 16:59:05 2008
Errors in file c:\oracle\admin\orcl1\bdump\orcl1_dbw0_2540.trc:
ORA-01157: cannot identify/lock data file 9 - see DBWR trace file
ORA-01110: data file 9: 'C:\ORACLE\ORADATA\ORCL1\USERS01.DBF'
ORA-27041: unable to open file
OSD-04002: 파일을 열 수 없음
O/S-Error: (OS 2) 지정된 파일을 찾을 수 없습니다.

ORA-1157 signalled during: ALTER DATABASE OPEN...


10. 해당되는 트레이스 파일도 열어본다.
SQL> ED C:\oracle\admin\ORCL1\bdump\orcl1_dbw0_2540.trc

*** SESSION ID:(2.1) 2008-07-08 16:59:05.000
ORA-01157: cannot identify/lock data file 9 - see DBWR trace file
ORA-01110: data file 9: 'C:\ORACLE\ORADATA\ORCL1\USERS01.DBF'
ORA-27041: unable to open file
OSD-04002: 파일을 열 수 없음
O/S-Error: (OS 2) 지정된 파일을 찾을 수 없습니다.


10. 원인을 알았으니 복구해보자.........사라진 파일을 돌려놓는다.


SQL> -- 3. 복구
11.

SQL> -- 3. 복구
SQL>  HOST COPY C:\OFFBACKUP\USERS01.DBF C:\oracle\oradata\ORCL1
        1개 파일이 복사되었습니다.

SQL> ALTER DATABASE OPEN;
ALTER DATABASE OPEN
*
1행에 오류:
ORA-01113: 9 파일이 매체 복구되어야 합니다
ORA-01110: 9 데이터 파일: 'C:\ORACLE\ORADATA\ORCL1\USERS01.DBF'

SQL> RECOVER DATAFILE 'C:\ORACLE\ORADATA\ORCL1\USERS01.DBF'
ORA-00279: 변환 346321가 (07/07/2008 17:55:39에서 생성된) 스레드 1에 필요합니다
ORA-00289: 제안 : C:\ORACLE\ORADATA\ORCL1\ARCHIVE\ARC00005.ARC
ORA-00280: 변환 346321(스레드 1를 위한)가 시퀀스번호 5에 있습니다


로그 지정: {<RET>=suggested | filename | AUTO | CANCEL}
AUTO
ORA-00279: 변환 545696가 (07/08/2008 08:38:41에서 생성된) 스레드 1에 필요합니다
ORA-00289: 제안 : C:\ORACLE\ORADATA\ORCL1\ARCHIVE\ARC00006.ARC
ORA-00280: 변환 545696(스레드 1를 위한)가 시퀀스번호 6에 있습니다
ORA-00278: 이 복구를 위해 로그 'C:\ORACLE\ORADATA\ORCL1\ARCHIVE\ARC00005.ARC'
파일은 더이상 필요하지 않습니다


ORA-00279: 변환 646229가 (07/08/2008 16:46:27에서 생성된) 스레드 1에 필요합니다
ORA-00289: 제안 : C:\ORACLE\ORADATA\ORCL1\ARCHIVE\ARC00007.ARC
ORA-00280: 변환 646229(스레드 1를 위한)가 시퀀스번호 7에 있습니다
ORA-00278: 이 복구를 위해 로그 'C:\ORACLE\ORADATA\ORCL1\ARCHIVE\ARC00006.ARC'
파일은 더이상 필요하지 않습니다


ORA-00279: 변환 646231가 (07/08/2008 16:46:28에서 생성된) 스레드 1에 필요합니다
ORA-00289: 제안 : C:\ORACLE\ORADATA\ORCL1\ARCHIVE\ARC00008.ARC
ORA-00280: 변환 646231(스레드 1를 위한)가 시퀀스번호 8에 있습니다
ORA-00278: 이 복구를 위해 로그 'C:\ORACLE\ORADATA\ORCL1\ARCHIVE\ARC00007.ARC'
파일은 더이상 필요하지 않습니다


ORA-00279: 변환 646234가 (07/08/2008 16:46:35에서 생성된) 스레드 1에 필요합니다
ORA-00289: 제안 : C:\ORACLE\ORADATA\ORCL1\ARCHIVE\ARC00009.ARC
ORA-00280: 변환 646234(스레드 1를 위한)가 시퀀스번호 9에 있습니다
ORA-00278: 이 복구를 위해 로그 'C:\ORACLE\ORADATA\ORCL1\ARCHIVE\ARC00008.ARC'
파일은 더이상 필요하지 않습니다


ORA-00279: 변환 646236가 (07/08/2008 16:46:35에서 생성된) 스레드 1에 필요합니다
ORA-00289: 제안 : C:\ORACLE\ORADATA\ORCL1\ARCHIVE\ARC00010.ARC
ORA-00280: 변환 646236(스레드 1를 위한)가 시퀀스번호 10에 있습니다
ORA-00278: 이 복구를 위해 로그 'C:\ORACLE\ORADATA\ORCL1\ARCHIVE\ARC00009.ARC'
파일은 더이상 필요하지 않습니다


ORA-00279: 변환 646239가 (07/08/2008 16:46:40에서 생성된) 스레드 1에 필요합니다
ORA-00289: 제안 : C:\ORACLE\ORADATA\ORCL1\ARCHIVE\ARC00011.ARC
ORA-00280: 변환 646239(스레드 1를 위한)가 시퀀스번호 11에 있습니다
ORA-00278: 이 복구를 위해 로그 'C:\ORACLE\ORADATA\ORCL1\ARCHIVE\ARC00010.ARC'
파일은 더이상 필요하지 않습니다


ORA-00279: 변환 646241가 (07/08/2008 16:46:40에서 생성된) 스레드 1에 필요합니다
ORA-00289: 제안 : C:\ORACLE\ORADATA\ORCL1\ARCHIVE\ARC00012.ARC
ORA-00280: 변환 646241(스레드 1를 위한)가 시퀀스번호 12에 있습니다
ORA-00278: 이 복구를 위해 로그 'C:\ORACLE\ORADATA\ORCL1\ARCHIVE\ARC00011.ARC'
파일은 더이상 필요하지 않습니다


ORA-00279: 변환 646244가 (07/08/2008 16:46:46에서 생성된) 스레드 1에 필요합니다
ORA-00289: 제안 : C:\ORACLE\ORADATA\ORCL1\ARCHIVE\ARC00013.ARC
ORA-00280: 변환 646244(스레드 1를 위한)가 시퀀스번호 13에 있습니다
ORA-00278: 이 복구를 위해 로그 'C:\ORACLE\ORADATA\ORCL1\ARCHIVE\ARC00012.ARC'
파일은 더이상 필요하지 않습니다


ORA-00279: 변환 646246가 (07/08/2008 16:46:46에서 생성된) 스레드 1에 필요합니다
ORA-00289: 제안 : C:\ORACLE\ORADATA\ORCL1\ARCHIVE\ARC00014.ARC
ORA-00280: 변환 646246(스레드 1를 위한)가 시퀀스번호 14에 있습니다
ORA-00278: 이 복구를 위해 로그 'C:\ORACLE\ORADATA\ORCL1\ARCHIVE\ARC00013.ARC'
파일은 더이상 필요하지 않습니다


ORA-00279: 변환 646248가 (07/08/2008 16:46:51에서 생성된) 스레드 1에 필요합니다
ORA-00289: 제안 : C:\ORACLE\ORADATA\ORCL1\ARCHIVE\ARC00015.ARC
ORA-00280: 변환 646248(스레드 1를 위한)가 시퀀스번호 15에 있습니다
ORA-00278: 이 복구를 위해 로그 'C:\ORACLE\ORADATA\ORCL1\ARCHIVE\ARC00014.ARC'
파일은 더이상 필요하지 않습니다


ORA-00279: 변환 648113가 (07/08/2008 16:55:42에서 생성된) 스레드 1에 필요합니다
ORA-00289: 제안 : C:\ORACLE\ORADATA\ORCL1\ARCHIVE\ARC00016.ARC
ORA-00280: 변환 648113(스레드 1를 위한)가 시퀀스번호 16에 있습니다
ORA-00278: 이 복구를 위해 로그 'C:\ORACLE\ORADATA\ORCL1\ARCHIVE\ARC00015.ARC'
파일은 더이상 필요하지 않습니다


ORA-00279: 변환 648115가 (07/08/2008 16:55:42에서 생성된) 스레드 1에 필요합니다
ORA-00289: 제안 : C:\ORACLE\ORADATA\ORCL1\ARCHIVE\ARC00017.ARC
ORA-00280: 변환 648115(스레드 1를 위한)가 시퀀스번호 17에 있습니다
ORA-00278: 이 복구를 위해 로그 'C:\ORACLE\ORADATA\ORCL1\ARCHIVE\ARC00016.ARC'
파일은 더이상 필요하지 않습니다


ORA-00279: 변환 648118가 (07/08/2008 16:55:47에서 생성된) 스레드 1에 필요합니다
ORA-00289: 제안 : C:\ORACLE\ORADATA\ORCL1\ARCHIVE\ARC00018.ARC
ORA-00280: 변환 648118(스레드 1를 위한)가 시퀀스번호 18에 있습니다
ORA-00278: 이 복구를 위해 로그 'C:\ORACLE\ORADATA\ORCL1\ARCHIVE\ARC00017.ARC'
파일은 더이상 필요하지 않습니다


ORA-00279: 변환 648120가 (07/08/2008 16:55:47에서 생성된) 스레드 1에 필요합니다
ORA-00289: 제안 : C:\ORACLE\ORADATA\ORCL1\ARCHIVE\ARC00019.ARC
ORA-00280: 변환 648120(스레드 1를 위한)가 시퀀스번호 19에 있습니다
ORA-00278: 이 복구를 위해 로그 'C:\ORACLE\ORADATA\ORCL1\ARCHIVE\ARC00018.ARC'
파일은 더이상 필요하지 않습니다


ORA-00279: 변환 648123가 (07/08/2008 16:55:53에서 생성된) 스레드 1에 필요합니다
ORA-00289: 제안 : C:\ORACLE\ORADATA\ORCL1\ARCHIVE\ARC00020.ARC
ORA-00280: 변환 648123(스레드 1를 위한)가 시퀀스번호 20에 있습니다
ORA-00278: 이 복구를 위해 로그 'C:\ORACLE\ORADATA\ORCL1\ARCHIVE\ARC00019.ARC'
파일은 더이상 필요하지 않습니다


ORA-00279: 변환 648125가 (07/08/2008 16:55:53에서 생성된) 스레드 1에 필요합니다
ORA-00289: 제안 : C:\ORACLE\ORADATA\ORCL1\ARCHIVE\ARC00021.ARC
ORA-00280: 변환 648125(스레드 1를 위한)가 시퀀스번호 21에 있습니다
ORA-00278: 이 복구를 위해 로그 'C:\ORACLE\ORADATA\ORCL1\ARCHIVE\ARC00020.ARC'
파일은 더이상 필요하지 않습니다


로그가 적용되었습니다.
매체 복구가 완료되었습니다.

12.
SQL> -- 4. 확인
SQL> ALTER DATABASE OPEN;

데이타베이스가 변경되었습니다.

SQL> SELECT * FROM SCOTT.DEPT;

    DEPTNO DNAME          LOC
---------- -------------- -------------
         1 S1             S1

SQL>


13. 로그 스위치를 다시 일으켜 본다!

SQL> @C:\SWITCH.sql

시스템이 변경되었습니다.


시스템이 변경되었습니다.


시스템이 변경되었습니다.


시스템이 변경되었습니다.


시스템이 변경되었습니다.


시스템이 변경되었습니다.


시스템이 변경되었습니다.


시스템이 변경되었습니다.


시스템이 변경되었습니다.


       LSN
----------
        34



14. 다른 상황에서 복구 해보자. ( 2번째 방식)
SQL> -- OFFLIE BACKUP, ARCHIVE LOG MODE
SQL> -- 원인 : USER01.DBF
SQL> -- 1. 정상 운영중
SQL> INSERT INTO SCOTT.DEPT
  2  VALUES (2, 'S2', 'S2');

1 개의 행이 만들어졌습니다.

SQL> COMMIT;

커밋이 완료되었습니다.

SQL> @SWITCH

시스템이 변경되었습니다.


시스템이 변경되었습니다.


시스템이 변경되었습니다.


시스템이 변경되었습니다.


시스템이 변경되었습니다.


시스템이 변경되었습니다.


시스템이 변경되었습니다.


시스템이 변경되었습니다.


시스템이 변경되었습니다.


       LSN
----------
        43

15.
SQL> -- 2. 장애 유도
SQL> SHUTDOWN ABORT
ORACLE 인스턴스가 종료되었습니다.
SQL> EXIT
Oracle9i Enterprise Edition Release 9.2.0.1.0 - Production
With the Partitioning, OLAP and Oracle Data Mining options
JServer Release 9.2.0.1.0 - Production에서 분리되었습니다.

C:\>DEL C:\ORACLE\ORADATA\ORCL1\USERS01.DBF

C:\>SQLPLUS "SYS/ORACLE AS SYSDBA"

SQL*Plus: Release 9.2.0.1.0 - Production on 화 Jul 8 17:39:56 2008

Copyright (c) 1982, 2002, Oracle Corporation.  All rights reserved.

휴지 인스턴스에 접속되었습니다.

SQL> STARTUP
ORACLE 인스턴스가 시작되었습니다.

Total System Global Area  126950220 bytes
Fixed Size                   453452 bytes
Variable Size             109051904 bytes
Database Buffers           16777216 bytes
Redo Buffers                 667648 bytes
데이터베이스가 마운트되었습니다.
ORA-01157: 데이터 9 파일을 식별 또는 잠금 할 수 없습니다- DBWR 추적 파일을
보십시오
ORA-01110: 9 데이터 파일: 'C:\ORACLE\ORADATA\ORCL1\USERS01.DBF'



16.
SQL> ALTER DATABASE
  2  DATAFILE 'C:\ORACLE\ORADATA\ORCL1\USERS01.DBF' OFFLINE;

데이타베이스가 변경되었습니다.

17.
SQL> ALTER DATABASE OPEN;

데이타베이스가 변경되었습니다.


18.
SQL> -- 3. 복구
SQL> HOST COPY C:\OFFBACKUP\USERS01.DBF C:\ORACLE\ORADATA\ORCL1
        1개 파일이 복사되었습니다.

19.
SQL> RECOVER DATAFILE 'C:\ORACLE\ORADATA\ORCL1\USERS01.DBF'
ORA-00279: 변환 346321가 (07/07/2008 17:55:39에서 생성된) 스레드 1에 필요합니다
ORA-00289: 제안 : C:\ORACLE\ORADATA\ORCL1\ARCHIVE\ARC00005.ARC
ORA-00280: 변환 346321(스레드 1를 위한)가 시퀀스번호 5에 있습니다


로그 지정: {<RET>=suggested | filename | AUTO | CANCEL}
AUTO
ORA-00279: 변환 545696가 (07/08/2008 08:38:41에서 생성된) 스레드 1에 필요합니다
ORA-00289: 제안 : C:\ORACLE\ORADATA\ORCL1\ARCHIVE\ARC00006.ARC
ORA-00280: 변환 545696(스레드 1를 위한)가 시퀀스번호 6에 있습니다
ORA-00278: 이 복구를 위해 로그 'C:\ORACLE\ORADATA\ORCL1\ARCHIVE\ARC00005.ARC'
파일은 더이상 필요하지 않습니다


ORA-00279: 변환 646229가 (07/08/2008 16:46:27에서 생성된) 스레드 1에 필요합니다
ORA-00289: 제안 : C:\ORACLE\ORADATA\ORCL1\ARCHIVE\ARC00007.ARC
ORA-00280: 변환 646229(스레드 1를 위한)가 시퀀스번호 7에 있습니다
ORA-00278: 이 복구를 위해 로그 'C:\ORACLE\ORADATA\ORCL1\ARCHIVE\ARC00006.ARC'
파일은 더이상 필요하지 않습니다


ORA-00279: 변환 646231가 (07/08/2008 16:46:28에서 생성된) 스레드 1에 필요합니다
ORA-00289: 제안 : C:\ORACLE\ORADATA\ORCL1\ARCHIVE\ARC00008.ARC
ORA-00280: 변환 646231(스레드 1를 위한)가 시퀀스번호 8에 있습니다
ORA-00278: 이 복구를 위해 로그 'C:\ORACLE\ORADATA\ORCL1\ARCHIVE\ARC00007.ARC'
파일은 더이상 필요하지 않습니다


ORA-00279: 변환 646234가 (07/08/2008 16:46:35에서 생성된) 스레드 1에 필요합니다
ORA-00289: 제안 : C:\ORACLE\ORADATA\ORCL1\ARCHIVE\ARC00009.ARC
ORA-00280: 변환 646234(스레드 1를 위한)가 시퀀스번호 9에 있습니다
ORA-00278: 이 복구를 위해 로그 'C:\ORACLE\ORADATA\ORCL1\ARCHIVE\ARC00008.ARC'
파일은 더이상 필요하지 않습니다


ORA-00279: 변환 646236가 (07/08/2008 16:46:35에서 생성된) 스레드 1에 필요합니다
ORA-00289: 제안 : C:\ORACLE\ORADATA\ORCL1\ARCHIVE\ARC00010.ARC
ORA-00280: 변환 646236(스레드 1를 위한)가 시퀀스번호 10에 있습니다
ORA-00278: 이 복구를 위해 로그 'C:\ORACLE\ORADATA\ORCL1\ARCHIVE\ARC00009.ARC'
파일은 더이상 필요하지 않습니다


ORA-00279: 변환 646239가 (07/08/2008 16:46:40에서 생성된) 스레드 1에 필요합니다
ORA-00289: 제안 : C:\ORACLE\ORADATA\ORCL1\ARCHIVE\ARC00011.ARC
ORA-00280: 변환 646239(스레드 1를 위한)가 시퀀스번호 11에 있습니다
ORA-00278: 이 복구를 위해 로그 'C:\ORACLE\ORADATA\ORCL1\ARCHIVE\ARC00010.ARC'
파일은 더이상 필요하지 않습니다


ORA-00279: 변환 646241가 (07/08/2008 16:46:40에서 생성된) 스레드 1에 필요합니다
ORA-00289: 제안 : C:\ORACLE\ORADATA\ORCL1\ARCHIVE\ARC00012.ARC
ORA-00280: 변환 646241(스레드 1를 위한)가 시퀀스번호 12에 있습니다
ORA-00278: 이 복구를 위해 로그 'C:\ORACLE\ORADATA\ORCL1\ARCHIVE\ARC00011.ARC'
파일은 더이상 필요하지 않습니다


ORA-00279: 변환 646244가 (07/08/2008 16:46:46에서 생성된) 스레드 1에 필요합니다
ORA-00289: 제안 : C:\ORACLE\ORADATA\ORCL1\ARCHIVE\ARC00013.ARC
ORA-00280: 변환 646244(스레드 1를 위한)가 시퀀스번호 13에 있습니다
ORA-00278: 이 복구를 위해 로그 'C:\ORACLE\ORADATA\ORCL1\ARCHIVE\ARC00012.ARC'
파일은 더이상 필요하지 않습니다


ORA-00279: 변환 646246가 (07/08/2008 16:46:46에서 생성된) 스레드 1에 필요합니다
ORA-00289: 제안 : C:\ORACLE\ORADATA\ORCL1\ARCHIVE\ARC00014.ARC
ORA-00280: 변환 646246(스레드 1를 위한)가 시퀀스번호 14에 있습니다
ORA-00278: 이 복구를 위해 로그 'C:\ORACLE\ORADATA\ORCL1\ARCHIVE\ARC00013.ARC'
파일은 더이상 필요하지 않습니다


ORA-00279: 변환 646248가 (07/08/2008 16:46:51에서 생성된) 스레드 1에 필요합니다
ORA-00289: 제안 : C:\ORACLE\ORADATA\ORCL1\ARCHIVE\ARC00015.ARC
ORA-00280: 변환 646248(스레드 1를 위한)가 시퀀스번호 15에 있습니다
ORA-00278: 이 복구를 위해 로그 'C:\ORACLE\ORADATA\ORCL1\ARCHIVE\ARC00014.ARC'
파일은 더이상 필요하지 않습니다


ORA-00279: 변환 648113가 (07/08/2008 16:55:42에서 생성된) 스레드 1에 필요합니다
ORA-00289: 제안 : C:\ORACLE\ORADATA\ORCL1\ARCHIVE\ARC00016.ARC
ORA-00280: 변환 648113(스레드 1를 위한)가 시퀀스번호 16에 있습니다
ORA-00278: 이 복구를 위해 로그 'C:\ORACLE\ORADATA\ORCL1\ARCHIVE\ARC00015.ARC'
파일은 더이상 필요하지 않습니다


ORA-00279: 변환 648115가 (07/08/2008 16:55:42에서 생성된) 스레드 1에 필요합니다
ORA-00289: 제안 : C:\ORACLE\ORADATA\ORCL1\ARCHIVE\ARC00017.ARC
ORA-00280: 변환 648115(스레드 1를 위한)가 시퀀스번호 17에 있습니다
ORA-00278: 이 복구를 위해 로그 'C:\ORACLE\ORADATA\ORCL1\ARCHIVE\ARC00016.ARC'
파일은 더이상 필요하지 않습니다


ORA-00279: 변환 648118가 (07/08/2008 16:55:47에서 생성된) 스레드 1에 필요합니다
ORA-00289: 제안 : C:\ORACLE\ORADATA\ORCL1\ARCHIVE\ARC00018.ARC
ORA-00280: 변환 648118(스레드 1를 위한)가 시퀀스번호 18에 있습니다
ORA-00278: 이 복구를 위해 로그 'C:\ORACLE\ORADATA\ORCL1\ARCHIVE\ARC00017.ARC'
파일은 더이상 필요하지 않습니다


ORA-00279: 변환 648120가 (07/08/2008 16:55:47에서 생성된) 스레드 1에 필요합니다
ORA-00289: 제안 : C:\ORACLE\ORADATA\ORCL1\ARCHIVE\ARC00019.ARC
ORA-00280: 변환 648120(스레드 1를 위한)가 시퀀스번호 19에 있습니다
ORA-00278: 이 복구를 위해 로그 'C:\ORACLE\ORADATA\ORCL1\ARCHIVE\ARC00018.ARC'
파일은 더이상 필요하지 않습니다


ORA-00279: 변환 648123가 (07/08/2008 16:55:53에서 생성된) 스레드 1에 필요합니다
ORA-00289: 제안 : C:\ORACLE\ORADATA\ORCL1\ARCHIVE\ARC00020.ARC
ORA-00280: 변환 648123(스레드 1를 위한)가 시퀀스번호 20에 있습니다
ORA-00278: 이 복구를 위해 로그 'C:\ORACLE\ORADATA\ORCL1\ARCHIVE\ARC00019.ARC'
파일은 더이상 필요하지 않습니다


ORA-00279: 변환 648125가 (07/08/2008 16:55:53에서 생성된) 스레드 1에 필요합니다
ORA-00289: 제안 : C:\ORACLE\ORADATA\ORCL1\ARCHIVE\ARC00021.ARC
ORA-00280: 변환 648125(스레드 1를 위한)가 시퀀스번호 21에 있습니다
ORA-00278: 이 복구를 위해 로그 'C:\ORACLE\ORADATA\ORCL1\ARCHIVE\ARC00020.ARC'
파일은 더이상 필요하지 않습니다


ORA-00279: 변환 648199가 (07/08/2008 16:55:57에서 생성된) 스레드 1에 필요합니다
ORA-00289: 제안 : C:\ORACLE\ORADATA\ORCL1\ARCHIVE\ARC00022.ARC
ORA-00280: 변환 648199(스레드 1를 위한)가 시퀀스번호 22에 있습니다
ORA-00278: 이 복구를 위해 로그 'C:\ORACLE\ORADATA\ORCL1\ARCHIVE\ARC00021.ARC'
파일은 더이상 필요하지 않습니다


ORA-00279: 변환 648202가 (07/08/2008 16:55:57에서 생성된) 스레드 1에 필요합니다
ORA-00289: 제안 : C:\ORACLE\ORADATA\ORCL1\ARCHIVE\ARC00023.ARC
ORA-00280: 변환 648202(스레드 1를 위한)가 시퀀스번호 23에 있습니다
ORA-00278: 이 복구를 위해 로그 'C:\ORACLE\ORADATA\ORCL1\ARCHIVE\ARC00022.ARC'
파일은 더이상 필요하지 않습니다


ORA-00279: 변환 648205가 (07/08/2008 16:56:03에서 생성된) 스레드 1에 필요합니다
ORA-00289: 제안 : C:\ORACLE\ORADATA\ORCL1\ARCHIVE\ARC00024.ARC
ORA-00280: 변환 648205(스레드 1를 위한)가 시퀀스번호 24에 있습니다
ORA-00278: 이 복구를 위해 로그 'C:\ORACLE\ORADATA\ORCL1\ARCHIVE\ARC00023.ARC'
파일은 더이상 필요하지 않습니다


ORA-00279: 변환 668422가 (07/08/2008 17:12:41에서 생성된) 스레드 1에 필요합니다
ORA-00289: 제안 : C:\ORACLE\ORADATA\ORCL1\ARCHIVE\ARC00025.ARC
ORA-00280: 변환 668422(스레드 1를 위한)가 시퀀스번호 25에 있습니다
ORA-00278: 이 복구를 위해 로그 'C:\ORACLE\ORADATA\ORCL1\ARCHIVE\ARC00024.ARC'
파일은 더이상 필요하지 않습니다


ORA-00279: 변환 673278가 (07/08/2008 17:35:29에서 생성된) 스레드 1에 필요합니다
ORA-00289: 제안 : C:\ORACLE\ORADATA\ORCL1\ARCHIVE\ARC00026.ARC
ORA-00280: 변환 673278(스레드 1를 위한)가 시퀀스번호 26에 있습니다
ORA-00278: 이 복구를 위해 로그 'C:\ORACLE\ORADATA\ORCL1\ARCHIVE\ARC00025.ARC'
파일은 더이상 필요하지 않습니다


ORA-00279: 변환 673280가 (07/08/2008 17:35:29에서 생성된) 스레드 1에 필요합니다
ORA-00289: 제안 : C:\ORACLE\ORADATA\ORCL1\ARCHIVE\ARC00027.ARC
ORA-00280: 변환 673280(스레드 1를 위한)가 시퀀스번호 27에 있습니다
ORA-00278: 이 복구를 위해 로그 'C:\ORACLE\ORADATA\ORCL1\ARCHIVE\ARC00026.ARC'
파일은 더이상 필요하지 않습니다


ORA-00279: 변환 673283가 (07/08/2008 17:35:34에서 생성된) 스레드 1에 필요합니다
ORA-00289: 제안 : C:\ORACLE\ORADATA\ORCL1\ARCHIVE\ARC00028.ARC
ORA-00280: 변환 673283(스레드 1를 위한)가 시퀀스번호 28에 있습니다
ORA-00278: 이 복구를 위해 로그 'C:\ORACLE\ORADATA\ORCL1\ARCHIVE\ARC00027.ARC'
파일은 더이상 필요하지 않습니다


ORA-00279: 변환 673285가 (07/08/2008 17:35:34에서 생성된) 스레드 1에 필요합니다
ORA-00289: 제안 : C:\ORACLE\ORADATA\ORCL1\ARCHIVE\ARC00029.ARC
ORA-00280: 변환 673285(스레드 1를 위한)가 시퀀스번호 29에 있습니다
ORA-00278: 이 복구를 위해 로그 'C:\ORACLE\ORADATA\ORCL1\ARCHIVE\ARC00028.ARC'
파일은 더이상 필요하지 않습니다


ORA-00279: 변환 673288가 (07/08/2008 17:35:39에서 생성된) 스레드 1에 필요합니다
ORA-00289: 제안 : C:\ORACLE\ORADATA\ORCL1\ARCHIVE\ARC00030.ARC
ORA-00280: 변환 673288(스레드 1를 위한)가 시퀀스번호 30에 있습니다
ORA-00278: 이 복구를 위해 로그 'C:\ORACLE\ORADATA\ORCL1\ARCHIVE\ARC00029.ARC'
파일은 더이상 필요하지 않습니다


ORA-00279: 변환 673290가 (07/08/2008 17:35:39에서 생성된) 스레드 1에 필요합니다
ORA-00289: 제안 : C:\ORACLE\ORADATA\ORCL1\ARCHIVE\ARC00031.ARC
ORA-00280: 변환 673290(스레드 1를 위한)가 시퀀스번호 31에 있습니다
ORA-00278: 이 복구를 위해 로그 'C:\ORACLE\ORADATA\ORCL1\ARCHIVE\ARC00030.ARC'
파일은 더이상 필요하지 않습니다


ORA-00279: 변환 673293가 (07/08/2008 17:35:44에서 생성된) 스레드 1에 필요합니다
ORA-00289: 제안 : C:\ORACLE\ORADATA\ORCL1\ARCHIVE\ARC00032.ARC
ORA-00280: 변환 673293(스레드 1를 위한)가 시퀀스번호 32에 있습니다
ORA-00278: 이 복구를 위해 로그 'C:\ORACLE\ORADATA\ORCL1\ARCHIVE\ARC00031.ARC'
파일은 더이상 필요하지 않습니다


ORA-00279: 변환 673295가 (07/08/2008 17:35:44에서 생성된) 스레드 1에 필요합니다
ORA-00289: 제안 : C:\ORACLE\ORADATA\ORCL1\ARCHIVE\ARC00033.ARC
ORA-00280: 변환 673295(스레드 1를 위한)가 시퀀스번호 33에 있습니다
ORA-00278: 이 복구를 위해 로그 'C:\ORACLE\ORADATA\ORCL1\ARCHIVE\ARC00032.ARC'
파일은 더이상 필요하지 않습니다


ORA-00279: 변환 673298가 (07/08/2008 17:35:49에서 생성된) 스레드 1에 필요합니다
ORA-00289: 제안 : C:\ORACLE\ORADATA\ORCL1\ARCHIVE\ARC00034.ARC
ORA-00280: 변환 673298(스레드 1를 위한)가 시퀀스번호 34에 있습니다
ORA-00278: 이 복구를 위해 로그 'C:\ORACLE\ORADATA\ORCL1\ARCHIVE\ARC00033.ARC'
파일은 더이상 필요하지 않습니다


ORA-00279: 변환 673738가 (07/08/2008 17:37:56에서 생성된) 스레드 1에 필요합니다
ORA-00289: 제안 : C:\ORACLE\ORADATA\ORCL1\ARCHIVE\ARC00035.ARC
ORA-00280: 변환 673738(스레드 1를 위한)가 시퀀스번호 35에 있습니다
ORA-00278: 이 복구를 위해 로그 'C:\ORACLE\ORADATA\ORCL1\ARCHIVE\ARC00034.ARC'
파일은 더이상 필요하지 않습니다


ORA-00279: 변환 673740가 (07/08/2008 17:37:56에서 생성된) 스레드 1에 필요합니다
ORA-00289: 제안 : C:\ORACLE\ORADATA\ORCL1\ARCHIVE\ARC00036.ARC
ORA-00280: 변환 673740(스레드 1를 위한)가 시퀀스번호 36에 있습니다
ORA-00278: 이 복구를 위해 로그 'C:\ORACLE\ORADATA\ORCL1\ARCHIVE\ARC00035.ARC'
파일은 더이상 필요하지 않습니다


ORA-00279: 변환 673743가 (07/08/2008 17:38:01에서 생성된) 스레드 1에 필요합니다
ORA-00289: 제안 : C:\ORACLE\ORADATA\ORCL1\ARCHIVE\ARC00037.ARC
ORA-00280: 변환 673743(스레드 1를 위한)가 시퀀스번호 37에 있습니다
ORA-00278: 이 복구를 위해 로그 'C:\ORACLE\ORADATA\ORCL1\ARCHIVE\ARC00036.ARC'
파일은 더이상 필요하지 않습니다


ORA-00279: 변환 673745가 (07/08/2008 17:38:01에서 생성된) 스레드 1에 필요합니다
ORA-00289: 제안 : C:\ORACLE\ORADATA\ORCL1\ARCHIVE\ARC00038.ARC
ORA-00280: 변환 673745(스레드 1를 위한)가 시퀀스번호 38에 있습니다
ORA-00278: 이 복구를 위해 로그 'C:\ORACLE\ORADATA\ORCL1\ARCHIVE\ARC00037.ARC'
파일은 더이상 필요하지 않습니다


ORA-00279: 변환 673789가 (07/08/2008 17:38:06에서 생성된) 스레드 1에 필요합니다
ORA-00289: 제안 : C:\ORACLE\ORADATA\ORCL1\ARCHIVE\ARC00039.ARC
ORA-00280: 변환 673789(스레드 1를 위한)가 시퀀스번호 39에 있습니다
ORA-00278: 이 복구를 위해 로그 'C:\ORACLE\ORADATA\ORCL1\ARCHIVE\ARC00038.ARC'
파일은 더이상 필요하지 않습니다


ORA-00279: 변환 673822가 (07/08/2008 17:38:06에서 생성된) 스레드 1에 필요합니다
ORA-00289: 제안 : C:\ORACLE\ORADATA\ORCL1\ARCHIVE\ARC00040.ARC
ORA-00280: 변환 673822(스레드 1를 위한)가 시퀀스번호 40에 있습니다
ORA-00278: 이 복구를 위해 로그 'C:\ORACLE\ORADATA\ORCL1\ARCHIVE\ARC00039.ARC'
파일은 더이상 필요하지 않습니다


ORA-00279: 변환 673827가 (07/08/2008 17:38:11에서 생성된) 스레드 1에 필요합니다
ORA-00289: 제안 : C:\ORACLE\ORADATA\ORCL1\ARCHIVE\ARC00041.ARC
ORA-00280: 변환 673827(스레드 1를 위한)가 시퀀스번호 41에 있습니다
ORA-00278: 이 복구를 위해 로그 'C:\ORACLE\ORADATA\ORCL1\ARCHIVE\ARC00040.ARC'
파일은 더이상 필요하지 않습니다


로그가 적용되었습니다.
매체 복구가 완료되었습니다.

20.
SQL> ALTER TABLESPACE USERS ONLINE;

테이블 영역이 변경되었습니다.

SQL> -- 4. 확인
SQL> SELECT * FROM SCOTT.DEPT;

    DEPTNO DNAME          LOC
---------- -------------- -------------
         1 S1             S1
         2 S2             S2



21. 2번째 복구 방법이 1번째 방법과 다른 점:

1번째 상황은 복구 중에 사용자가 DB를 사용할 수 없고
ALTER DATABASE OPEN 이후부터 가능하다.

반면 2번째 상황은
일단 16번 작업처럼 장애가 생긴 DBF 파일을 OFFLINE 으로 내리고 복구를 시도하기 때문에
장애가 생긴 파일과 관련없는 부분은
복구 작업 중에도 다른 사용자가 이용할 수 있다.

EX)
복구 작업 중에 USERS01.DBF 와 관련있는
SELECT * FROM SCOTT.DEPT 는 불가능 하지만
SELECT * FROM SCOTT.SALGRADE 는 가능하다.



ALTER SYSTEM SWITCH LOGFILE;
ALTER SYSTEM SWITCH LOGFILE;
ALTER SYSTEM SWITCH LOGFILE;
ALTER SYSTEM SWITCH LOGFILE;
ALTER SYSTEM SWITCH LOGFILE;
ALTER SYSTEM SWITCH LOGFILE;
ALTER SYSTEM SWITCH LOGFILE;
ALTER SYSTEM SWITCH LOGFILE;
ALTER SYSTEM SWITCH LOGFILE;
SELECT MAX(SEQUENCE#) "LSN" FROM V$LOG;

 

'Programing > Oracle' 카테고리의 다른 글

펌]간단한 sqlplus 명령  (0) 2008.08.12
Oracle - Backup & Recovery 2  (0) 2008.07.29
Oracle - Backup & Recovery  (0) 2008.07.29
Oracle - Remote  (0) 2008.07.29
Oracle - Export/Import  (0) 2008.07.29