아카이브변경
1.
SQL> alter system set log_archive_dest_1='location=/oracle/arc_back' scope=spfile;
2.
SQL> alter system set log_archive_format='%t_%s_%r.arc' scope=spfile;
3.
os상에서 oracle/product/102/db_1/dbs/initorcl.ora 파일을 찾아서 삭제한다.
4.
SQL>create pfile from spfile;
SQL> shutdown immediate;
SQL> startup mount;
SQL> alter database archivelog;
SQL> alter database open;
-->여기까지 archive 적용완료
test
1.test를 위해서 콜드백업을 받아야한다.
우선 sql문을 수행하여 백업받을 파일들을 확인한다.
나의 database 파일목록이다.
select name from v$controlfile;
/oracle/oradata/orcl/control01.ctl
/oracle/oradata/orcl/control02.ctl
/oracle/oradata/orcl/control03.ctl
select member from v$logfile;
/oracle/oradata/orcl/redo03.log
/oracle/oradata/orcl/redo02.log
/oracle/oradata/orcl/redo01.log
select name from v$datafile;
/oracle/oradata/orcl/system01.dbf
/oracle/oradata/orcl/undotbs01.dbf
/oracle/oradata/orcl/sysaux01.dbf
/oracle/oradata/orcl/users01.dbf
/oracle/oradata/orcl/example01.dbf
위에 나열된 파일들을 Database를 내린후에 OS상에서 copy명령을 통해 백업받아 두자.
&ORACLE_HOME/dbs/initorcl.ora <--파라메터파일은 중요한 파일이므로 만약을 대비해 copy를 꼭 해두자
데이터베이스를 shutdown immediate 하고
os상의 명령어를 통해 위의 목록들을 백업받을 공간에 카피해둔다.
다시 데이터베이스를 startup하고 다음과 같이 한다.
SQL> alter system switch logfile;
자신이 지정해놓은 archive 파일경로에 파일이 생성되는지 확인후
생성이 되면 여러번 로그스위치를 강제로 일으켜준다.
2.
#>oracle/oradata/orcl에서 임의로 파일 하나를 삭제한다.
3.
SQL>shutdown immeate;
SQL>startup
ORACLE instance started.
Total System Global Area 285212672 bytes
Fixed Size 1218992 bytes
Variable Size 96470608 bytes
Database Buffers 184549376 bytes
Redo Buffers 2973696 bytes
Database mounted.
ORA-01157: cannot identify/lock data file 4 - see DBWR trace file
ORA-01110: data file 4: '/oracle/oradata/orcl/users01.dbf'
해당 데이터파일을 찾을수 없다면서 발생하는 error이다.
4.복구를 하기 위해
SQL>shutdown immediate;
os상에서 콜드백업을 받은 파일을 oradata/oracl/ 밑에 카피해서 복구해준다. 그리고 콜드백업을 한 시점 이후에 변경된 사항에 대해서 복구하기 위해 아카이브 로그파일을 적용해야 한다.
SQL>startup mount;
SQL>set autorecovery on; <--이 옵션을 주게 되면 완전복구를 하는 것이다. 만약 불완전 복구(특정한 시점으로 복구)를 하고자 할때는 이 옵션을 제외한다.
SQL>recover database;
하게 되면 자동으로 archive log가 적용되면서 적용되는 archive log파일을 보여준다.
그리고 Media recovery complete. 라는 문구가 떨어지면
복구가 완료된것이다.
SQL>alter database open;
'Oracle > admin' 카테고리의 다른 글
테이블 삭제후 휴지통 관리 및 테이블 복원 (0) | 2015.09.14 |
---|---|
실수로 Data 삭제후 Commit 한 경우 복구 방법(일시적) (0) | 2015.09.14 |
테이블스페이스,테이블,인덱스 관리 (0) | 2015.09.14 |
export & import (0) | 2015.09.14 |
클라이언트에서 서버DB로 sqlplus 접속 (0) | 2015.09.14 |