오라클자바커뮤니티에서 설립한 오엔제이프로그래밍 실무교육센터
(신입사원채용무료교육, 오라클SQL, 튜닝, 힌트,자바프레임워크, 안드로이드, 아이폰, 닷넷)
우선 SGA를 확인 해야 하는데…
9i에서는 다음과 같이 하면 확인 할 수 있습니다. SQL> conn / as sysdba
연결되었습니다.
SQL> show sga
//모든 division의 합
Total System Global Area 76618332 bytes
//background process의 일반적인 정보들을 포함하며 사용자 data는 포함 안되며 보통 100K를 넘지 않습니다.
Fixed Size 453212 bytes
//initSID.ora 파일의 shared_pool_size + large_pool_size+java_pool_size+others의 합
Variable Size 62914560 bytes
//db_block_buffers * blocksize
Database Buffers 12582912 bytes
//SGA내의 online redo log buffer의 크기, initSID.ora 파일의 log_buffer값, 최소값은 db_block_size*4
Redo Buffers 667648 bytes
SGA의 크기는 9i 이전까지는 정적이었지만 9i이후에는 동적으로(alter system과 같은 명령으로 동적으로 값을 변경 가능) setting 할 수 있습니다. 동적 SGA를 결정짓는 parameter는 다음과 같습니다.
DB_BLOCK_SIZE
DB_CACHE_SIZE
SHARED_POOL_SIZE
LOG_BUFFER
결국 SGA는 DB_CACHE_SIZE + DB_KEEP_CACHE_SIZE + DB_RECYCLE_CACHE_SIZE + DB_nK_CACHE_SIZE + SHARED_POOL_SIZE + LARGE_POOL_SIZE + JAVA_POOL_SIZE + LOG_BUFFER + 1MB 정도로 구성 됩니다.
SHOW SGA를 했을 때 REDO BEFFERS 값과 inirSID.ora 파일의 LOG_BUFFER 파라미터 값이 다르다면 log_buffer의 값을 변경하여 일치하도록 하시구요, redo buffers의 최소값은 buffer size * 4 이상 되도록 설정 하세요.
또한 8.16 버전에서 SHOW SGA또는 V$SGA 내에서 “JAVA_POOL_SIZE”가 보이지 않으면 BUG이니 Patch 하도록 하세요…
8.15 버전에서는 “JAVA_POOL_SIZE”의 제한은 없고 기본값은 20M 입니다. initSID.ora 파일에서 이 값을 설정 시 1M 이상 지정 해야하며 1MB 미만인 경우엔 ora-01078 “failure in processing initialization parameters” 에러를 만날 수 있습니다.
8.16 버전에서는 “JAVA_POOL_SIZE”에 대해 제한이 있는데 기본값은 8.15와 마찬가지로 20M이며 initSID.ora에서 설정 시 32768 byte이상 설정 해야 합니다.
댓글 없음:
댓글 쓰기