TECH
QUESTION
자주하는 질문답변 입니다.
Oracle
작성자 | 유건데이타 | 등록일 | 2015-05-07 |
제목 | RECOVERY 의 모든 것 (DATABASE, TABLESPACE, DATAFILE) | ||
---|---|---|---|
RECOVERY 의 모든 것 (DATABASE, TABLESPACE, DATAFILE)
====================================================== PURPOSE --------- ORACLE DATABASE의 RECOVERY에 대한 전반적인 부분을 살펴본다. Explanation ------------ (1) DATABASE RECOVERY . Complete, Incomplete recovery가 가능 . Offline recovery만 가능하다. (즉 database가 recovery 시 open 되어 있지 않아야 함.) . SYSTEM tablesapce 의 recovery 도 가능하다. . recovery 시 database access가 불가능하고 복구시간은 적용되어야 하는 redo 의 양에 dependent하다. +++ Complete recovery control file과 redo log file은 current 것이 존재 datafile만 backup 본을 restore한다. 1 % cp backup_file oracle_file_directory 2 SVRMGR> startup mount 3 SVRMGR> alter database rename file 'old' to 'new'; 단 이 명령은 datafile을 기존의 directory에 restore하지 않고 다른 directory에 놓았을 경우에만 사용. 4 Recovery를 위한 모든 datafile이 online인지 check한다. SVRMGR> select file#,status,name from V$DATAFILE; 만약 offline인 것이 있으면 다음과 같이 online시킨다. SVRMGR> alter database datafile 'filename' online; (대부분 위의 3,4번은 불필요하다.) 5 SVRMGR> RECOVER DATABASE ; 6 SVRMGR> alter database open; +++ Incomplete recovery (Incomplete recovery 시 datafile 이 offline 되어 있으면 복구가 불가능하다) (1 ~ 4번은 complete recovery와 동일) 5 SVRMGR> RECOVER DATABASE UNTIL CANCEL; * backup받은 controlfile을 restore했거나 script로 재생성했다면 SVRMGR> RECOVER DATABASE USING BACKUP CONTROLFILE UNTIL CANCEL; * 지정된 시간까지만 복구하려면 SVRMGR> RECOVER DATABASE UNTIL TIME '2001-05-10:10:37:00'; 6 SVRMGR> ALTER DATABASE OPEN RESETLOGS; (2) TABLESPACE RECOVERY RECOVER TABLESPACE tablespace_name [,tablespace_name..] * 이 방법은 tablespace의 list에 등록된 모든 data file 의 media recovery를 위한 command 이다. * Oracle은 tablespace가 갖는 datafile이 어떤 것인가를 아는 것은 반드시 database가 open 되어 있을 경우이므로 이 tablespace recovery command는 database가 open되었을 때 비로소 가능하다. * command를 실행하기 위해 반드시 tablespace는 offline되어 있어야 한다. * offline 되어지지 않는 (예를 들면 SYSTEM ) tablespace는 recovery가 불가능하다. * incomplete recovery는 불가능하다 . 복구 순서 1 SVRMGR> alter tablespace ts_name offline; 2 recovery 가 필요한 tablesapce의 datafile을 restore 한다. 3 lost 되었거나 손상된 datafile 이 invalid 일경우는 control file 에 datafile 의 위치가 변경되어야 한다. SVRMGR> alter database rename file 'old' to 'new'; 4 SVRMGR> RECOVER TABLESPACE ts_name; 5 SVRMGR> alter tablespace ts_name online; (3) DATAFILE RECOVERY RECOVER DATAFILE 'filename' ['filename] * media recovery lock만 datafile에 얻을 수 있다면 online, offline recovery가 모두 가능하다. * On line recovery시 (database 가 임의의 instance 에 의해 open 되어 있다면) datafile recovery는 offline 되어있는 datafile 만 recovery 가 가능하다. * Incomplete recovery는 불가능하다. 복구순서 +++Online Recovery 1 SVRMGR> startup mount 2 SVRMGR> alter database datafile 'filename' offline; 3 SVRMGR> alter database open 4 SVRMGR> alter database rename 'old' to 'new' 5 SVRMGR> RECOVER DATAFILE 'datafile' 6 SVRMGR> alter database datafile 'filename' online +++Offline Recovery 1 SVRMGR> alter databse rename 'old_filename' to 'new' 2 SVRMGR> startup mount 3 SVRMGR> alter database datafile 'filename' online SVRMGR> alter database datafile 'filename' offline 양쪽 모두 가능하다. 4 SVRMGR> RECOVER DATAFILE 'datafile' 5 SVRMGR> alter databse datafile 'filename' online; 6 SVRMGR> alter database open Reference Documents 출처 : Technical Bulletin (Korean) |
Comment | |||
---|---|---|---|
등록된 코멘트가 없습니다. |