[관리][튜닝] REDO LOG FILE SIZE의 변경 또는 추가

REDO LOG FILE SIZE의 변경 또는 추가

===================================

* Oracle에서 사용 중인 REDO Log file은 V7에서는 Default로 Size가 512K인

3개의 REDO Log file이 생긴다.

DB를 이용하는 Application의 특성에 따라 REDO Log file의 수를 늘리거나 REDO Log file의 Size를 크게 할 필요가 있다.  REDO Log file의 Size를 변경

하거나 수를 늘리는 것은 아래와 같은 방법을 이용한다.

– REDO Log file의 Size 변경

(1) V$Log와 V$Logfile을 이용해 어느 것이 Current Log인지 또한 각 Log file의 Data file 명인지를 확인한다.

SQLDBA> select * from v$log;

(7.3이상인 경우는 SQLDBA가 아니고 SVRMGR)

GROUP#  THREAD#  SEQUENCE# BYTES   MEMBERS  ARC STATUS   FIRST_CHAN

——  ——-  ——— ——  ——– — ——– ———- FIRST_TIME

——————

1        1         55 512000         1  NO  CURRENT     65081

2/06/95 19:32:57

2        1         53 512000         1  NO  INACTIVE    64111

1/21/95 11:06:14

3        1         54 512000         1  NO  INACTIVE    64801

1/21/95 11:41:44

3 rows selected.

SQLDBA> select * from v$logfile;

GROUP# STATUS    MEMBER

——– ——-  ————————————————

1             /usr4/ora713/dbs/log1ORA713.dbf

2             /usr4/ora713/dbs/log2ORA713.dbf

3             /usr4/ora713/dbs/log3ORA713.dbf

3 rows selected.

(2) V$Logfile에서 확인된 Inactive Log file을 먼저 아래의 Command를 이용

해 Log file을 Drop한다. 정상적으로 Drop되면 Host Command를 이용해 Datafile을 Remove한다.

SQLDBA> alter database drop logfile

‘/usr4/ora713/dbs/log2ORA713.dbf’;

Statement processed.

SQLDBA> !rm /usr4/ora713/dbs/log2ORA713.dbf

(3) Oracle V7에서는 Default로 3개의 REDO Log file이 생기는데 최소한 2개

이상의 REDO Log file이 필요하다. 즉 위의 (3)과 같이 2번째 Log file을 Drop 하였으므로 Log file은 2개만 남아 있는데 1개를 또 Drop하고자 하니 아래와 같이 Ora-1567 & Ora-1532 Error가 발생한다. 이 때에는 다음과 같이 Log file의 Size를 크게 하여 이미 Drop된 2번 Logfile을 Add한 후 Drop하여야 한다.

SQLDBA>  alter database drop logfile

‘/usr4/ora713/dbs/log3ORA713.dbf’;

ORA-01567:dropping log 3 would leave less than 2 log files in thread 1 ORA-00312:online log 3 thread 1:’/usr4/ora713/dbs/log3ORA713.dbf’

(4) Drop한 Log file을 추가한 후에 Drop 한다. Logfile Add 시 여기에서는 3m로 정의하여 크기를 조정하였다.

SQLDBA> alter database add logfile

‘/usr4/ora713/dbs/log2ORA713.dbf’ size 3M; Statement processed.

SQLDBA> alter database drop logfile

‘/usr4/ora713/dbs/log3ORA713.dbf’;

Statement processed.

SQLDBA> !rm /usr4/ora713/dbs/log3ORA713.dbf

(5) (4)에서 Drop된 3번 Logfile을 Add한다.

SQLDBA> alter database add logfile

‘/usr4/ora713/dbs/log3ORA713.dbf’ size 3M; Statement processed.

(6) V$Log에서 Current Logfile은 바로 Drop할 수 없다. 이를 Drop하기 위해

서는 현재의 Current Logfile을 Inactive로 하여야 한다. Inactive로 하려면 ‘Alter System Switch Logfile’ Command를 이용하여야 한다.

SQLDBA> alter system switch logfile;

Statement processed.

(7) INAVTIVE가 되었으면 다음과 같이 Logfile을 Drop하고 Datafile 의 Remove후 Logfile의 Size를 변경하여 Add한다.

SQLDBA> alter database drop logfile

‘/usr4/ora713/dbs/log1ORA713.dbf’;

Statement processed.

SQLDBA> !rm /usr4/ora713/dbs/log1ORA713.dbf

SQLDBA> alter database add  logfile

‘/usr4/ora713/dbs/log1ORA713.dbf’ size 3M; Statement processed.

(8) (1)에서 (7) 까지는 기존의 Log file을 Drop 후 새로이 만드는 것에 관한 설명이며 이외 기존에 3개 Log file을 4개로 변경할 경우에는 아래와 같이 Logfile을 필요한 갯수 만큼 Add하면 된다.

SQLDBA> alter database add logfile

‘/usr4/ora713/dbs/log4ORA713.dbf’ size 3M; Statement processed.

이상입니다.

서진우

슈퍼컴퓨팅 전문 기업 클루닉스/ 상무(기술이사)/ 정보시스템감리사/ 시스존 블로그 운영자

You may also like...

2 Responses

  1. 2022년 6월 22일

    3siliceous

  2. 2023년 1월 26일

    1emancipate

페이스북/트위트/구글 계정으로 댓글 가능합니다.