BULLETIN CATEGORY BULLETIN TOPIC |
: RDBMS : 데이타 화일을 삭제한 경우 Recovery |
DATABASE RECOVERY에 앞서 ORACLE INSTANCE(즉, ORACLE RDBMS)의 STARTUP 단계를 우선 살펴보기로 하자.
첫번째 단계로 INSTANCE를 START시키며, 여기서는 initORACLE_SID.ora 화일의 파라미터를 참조하여 SGA(SYSTEM GLOBAL AREA)를 할당하고 백그라운드 프로세스를 START 시킨다.
두번째 단계로 DATABASE의 MOUNT이며 파라미터 화일에 명시된 CONTROL FILE을 오픈하고 마지막 세번째 단계로 SVRMGR> CONNECT INTERNAL; RDBMS의 STARTUP시 문제의 데이타 화일이 CONTROL FILE 정보에서는 존재하지만 실제로O/S상에서는 존재하지 않으므로 DATABASE OPEN 단계에서 삭제된 데이타화일을 OPEN할 수 없다.
DATABASE OPEN 단계에서 CONTROL FILE에서는 ORA-1157 에러에서 나타난 11번 데이타 화일이 존재하는 것으로 인식하지만 실제로 O/S상의 데이타 화일 (ORA-1110 에러에 명시된 '/user1/oracle7/dbs/user2.dbf' 화일)이 삭제된 상태이다.
이러한 경우에는 DATABASE STARTUP시 STARTUP MOUNT 단계까지 실행한 후, 문제의 데이타 화일을 OFFLINE 시킨 다음 데이타베이스를 오픈한다. 단 데이타베이스 오픈이 정상적으로 수행되면 경우에는 DATABASE STARTUP시 항상 데이타 화일의 오픈 단계에서 에러가 발생된다. 따라서, 문제의 데이타 화일의 OFFLINE과 TABLESPACE의 DROP전에 반드시 해당 TABLESPACE를 사용하고 있는 USER의 데이타 백업을 수행해야 한다.
데이타 화일의 OFFLINE과 관련된 명령은 다음과 같다. (1) SVRMGR> CONNECT INTERNAL; (4)번 단계에서 정상적으로 DATABASE가 오픈된 후 CONTROL FILE로 부터의 데이타베이스 정보를 (1) SQL> SELECT * FROM V$DATAFILE ;
(2) SQL> SELECT * FROM DBA_DATA_FILES ;
위와 같은 STATUS는 물론 5)에서 DROP TABLESPACE를 실시하면 정상적으로 CLEAR된다. 또한 5)번 과정이 끝나면 해당 TABLESPACE의 정보를 EXPORT받아 둔 경우에는 TABLESPACE를 새로 생성 한 후 IMPORT작업을 실시하여 복구를 할 수 있으며 만일 BACKUP이 없다면 해당 DATA는 포기하여야 한다. (ARCHIVELOG mode의 각종 recovery case는 다른 자료에서 다룸) |
Oracle Korea Customer Support Technical Bulletins |
'오라클' 카테고리의 다른 글
Table 크기의 추정 방법 (0) | 2006.10.26 |
---|---|
Index 크기의 추정 방법 (0) | 2006.10.18 |
데이타 화일 Rename (0) | 2006.10.18 |
Control File 재생성 (0) | 2006.10.18 |
데이터베이스 보안의 의미 (0) | 2006.09.25 |