'아카이브'에 해당되는 글 1건


Archive Log Mode
 
  • ARCHIVELOG 모드

  - 다 쓰여진 리두 로그 파일은 Log Switch가 일어나기 전 체크포인트가 발생하고 ARCn 프로세스에 의해 리두로그 파일을 백업할 때까지(Archivelog 파일 생성) Redo Log File은 재사용 될 수 없습니다.

  - ARCHIVED LOG FILE은 Media 장애가 발생 했을 때 데이터가 손실되지 않도록 데이터베이스를 보호합니다.

  - ARCHIVE LOG MODE는 온라인 상태에서 데이터베이스를 백업할 수 있습니다.(Hot Bakup)

- 오라클데이터베이스는 기본적으로 No Archive Log Mode 이고, Archive Log Mode로 운영하기 위해서는 따로 설정을 해주어야 한다.

   

   

   

   

  • archive mode TEST

       

  • PFILE을 수정하여 데이타베이스를 archivelog mode로 설정하기

  - NO ARCHIVE LOG 상태의 데이터베이스를 ARCHIVE LOG 모드 상태로 변경하기 위해서는 다음과 같은 순서로 작업해야 한다.

  • INIT.ORA 파라미터 파일을 수정한다.
  • 데이터베이스 인스턴스를 종료(SHUTDOWN)한다.
  • 데이터베이스 인스턴스를 MOUNT한다.(OPEN하지 않습니다)
  • 데이터베이스를 ARCHIVE LOG 모드로 변경한다.
  • 데이터베이스 인스턴스를 OPEN한다.

   

   

  • 현재 아카이브화가 되어있는지 확인

   

SQL> archive log list

  

   

   

   

  • spfile로도 alter system 명령으로 가능하지만 pfile 생성하여 작성

       

create pfile from spfile;

  

   

   

  • Archive mode 에 필요한 파라미터를 pfile에 지정

       

Log_archive_start=true(아카이브 자동설정)

(Show parameter log_archive_start 로 확인)

   

log_archive_format=orcl_%s_%t_%r.arc

   

log_Archive_dest_1='location=/home/oracle/backup/orcl_arch/'

(백업해둘 곳은 외장디렉토리에 저장. 경로 미리 생성)

  

※ LOG_ARCHIVE_FORMAT 옵션

  - %S : redo 로그 시퀀스 번호를 표시하여 자동으로 왼쪽이 0으로 채워져 파일 이름 길이를 일정하게 만든다.

  - %s : redo 로그 시퀀스 번호를 표시하고, 파일 이름 길이를 일정하게 맞추지 않는다.

  - %T : redo 스레드 넘버를 표시하며, 자동으로 왼쪽이 0으로 채워져 파일 이름 길이를 일정하게 만든다.

  - %t : redo 스레드 넘버를 표시하며, 파일 이름 길이를 일정하게 맞추지 않는다.

  

   

   

  • archove mode 변경

   

Archive mode 변경은 mount 단계에서 가능하므로 startup mount

상태에서 해당하는 명령어 실행

   

SQL> startup mount pfile="새롭게 만든 pfile의 위치"

SQL> alter dadtabase archivelog;

SQL> Alter database open;

  

   

   

   

  • 다시 open 하여 archive log list 명령어를 사용하여 모드가 변경 되었는지 확인

       

SQL> ARCHIVE LOG LIST

  

   

   

  • 강제로 로그 스위치를 발생시켜서 아카이브 로그 파일이 저장되는지 확인

       

SQL> ALTER SYSTEM SWITCH LOGFILE;

  

   

   

1-1 Archive Log Mode에서 No Archive Log Mode로 전환

  • 간단하게 Pfile에 작성했던 부분을 주석(#)처리해주면 된다.

       

   

  • SPFILE(서버 파라미터 파일)을 수정하여 데이타베이스를 ARCHIVELOG MODE로 설정
  • Oracle9i 이상의 경우 서버 파라미터 파일을 사용 할 경우 아래와 같은 과정을 거쳐서 아카이브 로그모드로 변경해야 한다.

     

    • 파라미터 설정

      -- LOG_ARCHIVE_START 파라미터 변경
      SQL> ALTER SYSTEM SET
      LOG_ARCHIVE_START=TRUE SCOPE=SPFILE;

      -- LOG_ARCHIVE_DEST 파라미터 변경
      SQL> ALTER SYSTEM SET
      LOG_ARCHIVE_DEST='C:\oracle\ora92\database\archive'
      SCOPE=SPFILE;

      -- LOG_ARCHIVE_FORMAT 파라미터 변경
      SQL> ALTER SYSTEM SET
      LOG_ARCHIVE_FORMAT='%S.ARC' SCOPE=SPFILE;

         

    • DB Shutdown

      SQL> SHUTDOWN IMMEDIATE

         

         

    • Mount 상태로 Startup

      SQL> STARTUP MOUNT

       

    • 아카이브 로그 모드 활성화

      SQL>ALTER DATABASE ARCHIVELOG;

         

       

    • 데이타베이스 오픈

      SQL> ALTER DATABASE OPEN;

       

    • 아카이브 로그 모드가 정상적으로 설정되어 있는지 확인한다.

      SQL> ARCHIVE LOG LIST;

         

         

2-1 SPFILE(서버 파라미터 파일)에서 NO ARCHIVE LOG모드로 전환하기

   

  • 자동 아카이브 모드를 false로 변경

       

SQL> ALTER SYSTEM SET
LOG_ARCHIVE_START=FALSE SCOPE=SPFILE;

  

 

  • DB shutdown

       

SQL> SHUTDOWN IMMEDIATE

  

   

  • mount 상태로 startup

       

SQL> STARTUP MOUNT

  

   

  • 데이터베이스를 no archive log mode로 전환.

       

SQL> ALTER DATABASE NOARCHIVELOG;

 

   

  • 데이타베이스 오픈

       

SQL> ALTER DATABASE OPEN;

  

   

  • 아카이브 로그 모드 상태 확인

       

SQL> ARCHIVE LOG LIST;

  

   

   

   

   

<참고문헌>

Oracle Database 11g : Adminstration Workshop

Oracle Database 11g Documentation Library

Oracle Database 10g Documentation Library

원본 위치 <http://www.oracleclub.com>

원본 위치 <http://www.dbguide.net/db.db?cmd=view&boardUid=12906&boardConfigUid=9&boardIdx=49&boardStep=1>

   

'1. IT Story > DB' 카테고리의 다른 글

Oracle HINT(기초)  (0) 2012.02.29
Oracle SQL Driving Table & JOIN(기초)  (0) 2012.02.29
Oracle SQL INDEX(기초)  (0) 2012.02.29
Oracle SQL Trace[기초]  (0) 2012.02.29
Oracle TableSpace  (0) 2012.02.29
Oracle Undo seg  (0) 2012.02.29
Oracle Redo Log  (0) 2012.02.29
Oracle Net  (0) 2012.02.29
블로그 이미지

운명을바꾸는자

IT와 함께 살아가는 삶

,