2012. 7. 9. 18:10

1. Archiving Redo Log Files
   ; redo log file이 꽉 찼을 때, 처음으로 되돌아가서 기록되지만 archive log mode이면 복사파일을
     먼저 만들고 log file에 기록한다.

   SVRMGR> ALTER DATABASE ARCHIVELOG ;
   --> archive log mode 설정

   * archive log 정보를 보는 방법
   SVRMGR> ARCHIVE LOG LIST ;
   SVRMGR> SELECT name, log_mode FROM v$database ;
   SVRMGR> SELECT archiver FROM v$instance ;

2. V$THREAD : Group에 대한 정보

   SVRMGR> SELECT groups, current_gruop


[ Lab ]


1. 현재 database에 몇 개의 redo log group이 존재하는지 확인하십시오.
SVRMGR> select * from v$logfile ;
SVRMGR> select * from v$log ;

2. 데이터베이스는 어떤 데이터베이스 모드로 구성되어 있습니까? archiving이 enable 되어 있습니까?
SVRMGR> select log_mode from v$database ;
SVRMGR> select archiver from v$instance ;

또는,
SVRMGR> archive log list

3. 새로운 redo log 멤버들을 각각의 그룹에 추가하십시오. 만약 group 1이 log1a.rdo라는 기존의 파일을 가지고 있다면 log1b.rdo라는 새로운 멤버를 추가하십시오.
SVRMGR> alter database and logfile member
     2  '$ORACLE_HOME/DATA/DISK3/log1b.rdo' to group 1,
     3  '$ORACLE_HOME/DATA/DISK3/log2b.rdo' to group 2 ;
SVRMGR> select * from v$logfile ;

4. 새로은 redo log 그룹을 directory DISK4에 추가하십시오.
SVRMGR> alter database add logfile
     2  ('$ORACLE_HOME/DATA/DISK4/log3a.rdo',
     3   '$ORACLE_HOME/DATA/DISK4/log3b.rdo')
     4  size 150k ;
SVRMGR> select * from v$logfile ;
SVRMGR> select * from v$log ;

5. redo log 멤버 log1b.rdo 와 log2b.rdo를 directory DISK4로 옮기십시오.
SVRMGR> shutdown
SVRMGR> host
$ cp $ORACLE_HOME/DATA/DISK3/log1b.rdo $ORACLE/HOME/DATA/DISK4/log1b.rdo
$ cp $ORACLE_HOME/DATA/DISK3/log2b.rdo $ORACLE/HOME/DATA/DISK4/log2b.rdo
$ exit
SVRMGR> startup mount
SVRMGR> alter database rename file
     2  '$ORACLE_HOME/DATA/DISK3/log1b.rdo','$ORACLE_HOME/DATA/DISK3/log2b.rdo'
     3  to
     4  '$ORACLE_HOME/DATA/DISK4/log1b.rdo','$ORACLE_HOME/DATA/DISK4/log2b.rdo' ;
SVRMGR> select * from v$logfile ;
SVRMGR> alter database open ;
SVRMGR> host
$ rm $ORACLE_HOME/DATA/DISK3/log1b.rdo
$ rm $ORACLE_HOME/DATA/DISK3/log2b.rdo

6. log switch를 강제로 읽으켜 보십시오.
SVRMGR> select * from v$log ;   ==> current log file 확인
SVRMGR> alter system switch logfile ;
SVRMGR> select * from v$log ;   ==> current log file 확인

7. 문제 4에서 생성된 로그 그릅을 제거하십시오.
SVRMGR> alter database drop logfile group 3 ;
  --> group 3가 현재 사용중이면 삭제 불가능. shutdown하고 다시 startup한다음 drop한다.
SVRMGR> select * from v$log ;
SVRMGR> host
$ rm $ORACLE_HOME/DATA/DISK4/log3a.rdo
$ rm $ORACLE_HOME/DATA/DISK4/log3b.rdo

Posted by 몰라욧