ORACLE/ADMIN2007. 12. 13. 19:11
반응형
1. 파라미터 명칭과 설명이 잘 정리되어 있습니다
http://www.orafaq.com/parms/index.htm
2. 9i 와 10g 의 차이점에 대해 정리되어 있습니다
http://www.ss64.com/orasyntax/initora.html
반응형

'ORACLE > ADMIN' 카테고리의 다른 글

오라클에서 유니코드의 사용  (0) 2008.04.26
오라클 캐릭터 셋 변경(CHARACTER SET)  (0) 2008.04.02
DATABASE LINK 사용법  (0) 2007.12.07
oracle lock  (0) 2007.08.14
ORACLE relink  (0) 2007.08.07
Posted by [PineTree]
ORACLE/ADMIN2007. 12. 7. 00:16
반응형


DATABASE LINK 사용 방법
=======================


먼저 한글 data간의 전달을 위해 두 db간의 character set이 같아야 합니다.
character set을 확인하는 방법은

sqlplus system/manager
select * from v$nls_parameters;
하여 보면 nls_characterset에 대한 값이 나옵니다.

 
  예를 위해 다음과 같은 환경을 가정하겠습니다.
    
           HOST NAME    :      HP7     -       SUN7      
      
           ORACLE_SID   :      ORA7   -    ORATEST 
    
  이라 할 때

  1)  HP7 에서 SUN7로 DB LINK 생성하기. 

 

      scott/tiger 로 Login

    SQL*NET V1의 경우
      SQL> create public database link  HP7TOSUN6
                connect to scott identified by tiger
                using 't:SUN7:ORATEST';

    (rdbms 7.3 이상은 SQL*NET v2 를 사용하십시오)


    SQL*NET V2의 경우

 

create [public |private] DATABASE LINK {사용할 링크 명}
 CONNECT TO {접속 아이디} IDENTIFIED BY {접속암호}using'연결문자열';   

 

 public 일 경우 모든 사용자가 사용할 수 있으며 pribate일 경우에는 생성한 사용자만 사용할 수있다.
 
 링크 이름을 지정하는 데 숫자가 먼저 올 수 없다.


      SQL> create public database link HP7TOSUN7
           connect to scott identified by tiger
           using 'ORATEST';

      로 하면 된다.

      이 때 V2인 경우의 ORATEST는 $ORACLE_HOME/network/admin/ directory의
      tnsnames.ora file 내에 지정된 service name이다.
      tnsnames.ora의 service name이 잘 setting 되어 있는지 확인하는 방법
      : SQL*Plus scott/tiger@service name했을 때, SQL*Plus에 log-in되어야
      합니다.
    

  2> SUN7 에 있는 TABLE의 select 및 view(view는 필요에 따라 생성) 작성,
     HP에서 작업
   
      SQL> select * from emp@HP7TOSUN7;

      SQL> create view emp_view as select *
           from emp@HP7TOSUN7 a
           where a.deptno = 10;
                   
  3> HP7 에서 SYNONYM을 생성하여 사용하는 경우

 

         SQL> create synonym emp for emp@HP7TOSUN7;
         SQL> select * from emp;

 

   로 한다면 간단히 분산 DB의 환경에서 사용할 수 있습니다.

  select를 제외한 DML(insert, update, delete)을 하려면,
  sql*plus log-in 시에 다음과 같은 option이 display 되어야 합니다.

  SQL*Plus: Release 3.3.3.0.0 - Production on Mon Jan 19 14:18:47 1998
  Copyright (c) Oracle Corporation 1979, 1996.  All rights reserved.

  Connected to:
  Oracle7 Server Release 7.3.3.4.0 with the 64-bit option - Production
  Release With the distributed, ......
  ------------------------------------

  remote 작업의 예

  select * from table_name@HP7TOSUN7;
  insert into table_name@HP7TOSUN7;
  delete table_name@HP7TOSUN7;
  ...

  (단 SERVER TO SERVER로 NETWORK 환경이 구축되어 있어야 하고,
  listener 가 반드시 떠 있어야 합니다.)

 

DATABASE LINK 삭제하기

 
 DROP [public|private\ database link {삭제할링크 명};

 

==db links 조회

 

==USER ACCOUNT

SELECT * FROM USER_DB_LINKS

 

--DBA ACCOUNT

SELECT * FROM DBA_DB_LINKS

 

/* NEW 오라클 테이블 비우기 */
select 'truncate table '||table_name||';' from user_tables;


 

/* NEW 오라클 노로깅 */
select 'alter table '||table_name||' nologging;' from user_tables ;


 

/* NEW 오라클 index drop */
select 'drop index '||object_name||';' from user_objects
where object_type = 'INDEX';


 

/* NEW 오라클 인서트  */
select 'insert /*+ append */ into '||table_name||' select * from '||table_name||'@dblinkname;'
from user_tables
where owner = 'KVDBA';


 


/* NEW 오라클 테이블 로깅으로 변경 */
select 'alter table '||table_name||' logging;' from user_tables;


덧글. 오라클이 CBO이면 analyze 를 수행할것을 권장...

반응형

'ORACLE > ADMIN' 카테고리의 다른 글

오라클 캐릭터 셋 변경(CHARACTER SET)  (0) 2008.04.02
오라클 파라미터 관련 사이트 링크  (0) 2007.12.13
oracle lock  (0) 2007.08.14
ORACLE relink  (0) 2007.08.07
Oradebug Command  (0) 2007.08.04
Posted by [PineTree]
ORACLE/ADMIN2007. 8. 14. 00:17
반응형

< oracle lock 걸린것 확인 하는 방법 >

select  username un, osuser ou, s.sid sid , s.serial# ser, l.type ty,
        decode(lmode,1,'NONE',2,'RS',3,'RX',4,'S',5,'RSX',6,'X') mh,
        o.name ob, id1,
        decode(request,1,'NONE',2,'RS',3,'RX',4,'S',5,'RSX',6,'X') mr
from    v$lock l, v$session s, sys.obj$ o
where   l.sid = s.sid
and     l.id1 = o.obj#(+)
and     username is not null
order by sid

************** 또 다른 방법 **************

oracle home/rdbms/admin/catblock.sql
                        utilblock.sql

 

 

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

* 다음 Query는 Lock과 관련된 transaction을 출력해준다.

  column username format a10
  column sid format 999
  column lock_type format a15
  column MODE_HELD format a11
  column MODE_REQUESTED format a10
  column LOCK_ID1 format a8
  column LOCK_ID2 format a8
  select a.sid,
    decode(a.type,
   'MR', 'Media Recovery',
   'RT', 'Redo Thread',
   'UN', 'User Name',
   'TX', 'Transaction',
   'TM', 'DML',
   'UL', 'PL/SQL User Lock',
   'DX', 'Distributed Xaction',
   'CF', 'Control File',
   'IS', 'Instance State',
   'FS', 'File Set',
   'IR', 'Instance Recovery',
   'ST', 'Disk Space Transaction',
   'IR', 'Instance Recovery',
   'ST', 'Disk Space Transaction',
   'TS', 'Temp Segment',
   'IV', 'Library Cache Invalidation',
   'LS', 'Log Start or Switch',
   'RW', 'Row Wait',
   'SQ', 'Sequence Number',
   'TE', 'Extend Table',
   'TT', 'Temp Table',
   a.type) lock_type,
   decode(a.lmode,
   0, 'None',            /* Mon Lock equivalent */
   1, 'Null',            /* N */
   2, 'Row-S (SS)',     /* L */
   3, 'Row-X (SX)',     /* R */
   3, 'Row-X (SX)',     /* R */
   4, 'Share',           /* S */
   5, 'S/Row-X (SSX)', /* C */
   6, 'Exclusive',      /* X */
   to_char(a.lmode)) mode_held,
   decode(a.request,
   0, 'None',            /* Mon Lock equivalent */
   1, 'Null',            /* N */
   2, 'Row-S (SS)',     /* L */
   3, 'Row-X (SX)',     /* R */
   4, 'Share',           /* S */
   5, 'S/Row-X (SSX)', /* C */
   6, 'Exclusive',      /* X */
   to_char(a.request)) mode_requested,
   to_char(a.id1) lock_id1, to_char(a.id2) lock_id2
  from v$lock a
  where (id1,id2) in
      (select b.id1, b.id2 from v$lock b where b.id1=a.id1 and
              b.id2=a.id2 and b.request>0);


  ( 위의 Query를 실행시키면 다음과 같은 내용이 출력된다.

 SID LOCK_TYPE         MODE_HELD   MODE_REQUE   LOCK_ID1   LOCK_ID2
 --- ---------------   ----------  ----------   --------   --------
   5  Transaction       Exclusive    None        262172     90
   6  Transaction       None         Exclusive   262172     90
   9  Transaction       None         Exclusive   262172     90

  SID 6과 9는 SID 5가 걸고 있는 Lock이 풀리기를 기다리고 있음을 알 수 있다.

 * 다음 Query는 Lock과 관련된 테이블을 출력해 준다.

  column username format a10
  column lockwait format a10
  column sql_text format a80
  column object_owner format a14
  column object format a15
  select b.username username, c.sid sid, c.owner object_owner,
     c.object object, b.lockwait, a.sql_text SQL
  from v$sqltext a, v$session b, v$access c
  where a.address=b.sql_address and
     a.hash_value=b.sql_hash_value and
     b.sid = c.sid and c.owner != 'SYS';
  /

  ( 위의 Query를 실행하면 다음과 같은 결과가 출력된다.

  USERNAME          SID OBJECT_OWNER   OBJECT          LOCKWAIT
  --------------- --- ------------- -------------- ----------
  SQL
  ---------------------------------------------------------------
  LTO2                6  LTO                EMP             C3D320F4
  update lto.emp set empno =25 where empno=7788
  LTO3                9  LTO                EMP             C3D320C8
  delete from lto.emp where empno=7788
  LTO                 5  LTO                DEPT
  insert into lto.dept values (60,'PROGRAMMER','LOS ANGELOS')

 여기서는 USERNAME에 나와있는 유저가 OBJECT에 나와있는 테이블을 수정하려고
 함을 나타낸다. LT02,LT03는 LT0가 Commit,Rollback 하기를 기다리고 있음을 알
 수 있다. 하지만 여기에는 가장 최근의 DML 명령 하나만 나와있기 때문에 여기
 나온 명령이 반드시 Lock을 걸고 있는 명령이라고 단정지을 수는 없다.

  관련된 프로세스
  ---------------
 * 다음 Query를 실행해 보면 프로세스와 관련된 정보를 얻을 수 있다.

  column "ORACLE USER" format a11
  column SERIAL# format 9999999
  column "OS USER" format a8
  select substr(s.username,1,11) "ORACLE USER", p.pid "PROCESS ID",
    s.sid "SESSION ID", s.serial#, osuser "OS USER",
    p.spid "PROC SPID",s.process "SESS SPID", s.lockwait "LOCK WAIT"
  from v$process p, v$session s, v$access a
  where a.sid=s.sid and
     p.addr=s.paddr and
     s.username != 'SYS';
  /

 * 위의 Query를 실행하면 다음과 같은 결과가 출력된다.

 ORACLE    PROCESS  SESSION  SERIAL#  OS USER   PROC   SESS   LOCKWT 
  USER          ID       ID                     SPID   SPID
 ------    -------  -------  -------  -------   ----   ----   ------
 LTO            19        5       31  usupport  17312  17309
 LTO2           25        6       43  usupport  17313  17310  C3D320F4
 LTO3           26        9        1  usupport  17314  17311  C3D320D8

 이 때는 다음과 같이 조치한다.

 1. LTO에게 Commit,Rollback 할 것을 요구한다.
 2. SQLDBA>ALTER SYSTEM KILL SESSION '5,31';
 3. %kill -9 17309   (유닉스상의 Shadown Process)
   stop/id=<SESS SPID> (PROC SPID=SESS SPID on vms running single task)

 여기서 SYS 유저는 제외시켰는데 필요하다면 Query의 Where 조건에서
 s.username != 'SYS' 부분을 삭제하면 된다.

  CATBLOCK.SQL & UTLLOCKT.SQL
  ---------------------------
 $ORACLE_HOME/rdbms/admin 디렉토리에 있는 스크립트 가운데 catblock.sql과
 utlockt.sql을 사용하여서 Lock 상황을 쉽게 파악할 수 있다. 이들은 다음과
 같이 실행한다.

 %cd $ORACLE_HOME/rdbms/admin
 %sqldba lmode=y (svrmgrl
 SVRMGR>connect internal
 SVRMGR>@catblock


  결과는 다음 Query 문으로 알아 본다.

 column waiting_session format a8
 select lpad(' ',3*(level-1)) || waiting_session,
   lock_type,
   mode_requested,
   mode_held,
   lock_id1,
   lock_id1,
   lock_id2
 from lock_holders
 connect by  prior waiting_session = holding_session
 start with holding_session is null;

  위의 Query에 의한 출력은 다음과 같다.

 WAITING_ LOCK_TYPE           MODE_REQUE MODE_HELD   LOCK_ID1   LOCK_ID2
 -------- ----------------- ---------- ---------- ---------- ----------
   5       None
   6       Transaction        Exclusive   Exclusive   262172      90
   9       Transaction        Exclusive   Exclusive   262172      90

  여기서 Session 6, Session 9가 Session 5를 기다리고 있음을 알 수 있다.

  Lock & Hanging 문제를 추정하는 방법
  -----------------------------------
 프로그램 상에서 어느 부분이 Lock, Hanging 문제를 일으키는지 알아내기가
 여의치 않을때 다음과 같은 방법을 사용해 보기 바란다.

 1. init<SID>.ora의 sql_trace=ture로 세팅하면 연관된 SQL 명령이 출력될
    것이다.
 2. OS 상에서도 Process 상태를 점검하여 본다.
 3. OS 상의 Debugging 기능을 사용하거나 만약 가능하다면 oradbx를 사용한다.
    Platform 에 따라서 없을 수도 있다.
 4. 여러가지 Monitoring 방법과 Locking/Blocking 스크립트를 이용한다.

  PROCESS STACKS 확인
  -------------------
 때로는 Hanging Process나 리소스를 점유하고 있는 Process의 Process Stack을
 점검해 보는 것이 문제 해결에 도움이 되는 경우가 있다.

 1. OS Debugging 프로그램을 이용하여 Hangup 되기 전의 마지막 Call을 확인
    한다.

    ex)%truss -p <shadow pid>

 2. oradbx(오라클 debugging 프로그램)은 Support,Development 시에만 사용
    된다.

 select substr(s.username,1,11) "ORACLE USER" ,
    p.pid "PROCESS ID", s.sid "SESSION ID", s.serial#,
    osuser "OS USER", p.spid "PROC SPID"
 from v$session s, v$access a, v$process p
 where a.sid=s.sid and
    p.addr=s.paddr and
    s.username != 'SYS';
 /

  위의 Query를 실행하면 다음과 같은 결과가 출력된다.

  ORACLE    PROCESS  SESSION  SERIAL#  OS USER   PROC   SESS   LOCKWT   
   USER          ID       ID                     SPID   SPID       
  ------    -------  -------  -------  -------   ----   ----   ------     
  LTO            19        5       31  usupport  17312  17309            
  LTO2           25        6       43  usupport  17313  17310  C3D320F4   
  LTO3           26        9        1  usupport  17314  17311  C3D320D8

 만약 oradbx가 없다면 다음과 같이 해서 만들어 준다.

 %cd $ORACLE_HOME/rdbms/lib
 %make -f oracle.mk oradbx

 LTO Process가 무엇을 하고 있는지 알고 싶으면 Process Stack을 보면 알수
 있다.

 ps -ef | grep 17312
   usupport 17312 17309 0 Sep 15 ?  0:00 oracleV713(DESCRIPTION=(LOCAL=YE

 type <oradbx>
 debug 17312 (이 유저의 oracle shadow process)
 dump stack
 dump procstat

 위에서 생성된 트레이스 화일(user_dump_dest 에 생성됨)을 이용하면 Hanging
 문제를 해결하는데 큰 도움이 된다.

  자주 발생하는 LOCK 문제들
  -------------------------
 1. Parent-Child 관계로 묶인 테이블에서 Child 테이블에 Index가 없는 상황
    에서 Child 테이블을 수정하게 되면 Parent테이블에 TABLE LEVEL SHARE
    LOCK이 걸리게 되어서 Parent 테이블에 대한 모든 Update가 금지된다.
 2. 블럭의 PCTFREE가 매우 작다면 한 블럭에 여러개의 레코드가 들어 있기
    때문에 한 블럭에 과도한 트랜잭션이 들어와서 블럭의 Transaction Layer가
    Release 되기를 기다리게 되는 경우도 있다.

 Ex)
 create table test (a number) initrans 1 maxtrans 1;

 SYSTEM:  insert into test values (5);            /* completed   */
 SCOTT:   insert into SYSTEM.test values (10);   /* Scott waits */

  SID OWNER   LOCK_TYPE       MODE_HELD   MODE_REQUE LOCK_ID1 LOCK_ID2
 ---- -----   ------------- ----------- ---------- -------- --------
    7 System  Transaction     Exclusive   None        196639    54
   10 Scott    Transaction      None        Share        196639    54

 

 

 

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

select sid, serial#,taddr,lockwait,그외기타정보컬럼 from v$session where
schemaname <> ''sys''
/
락이 걸리거나 의심되는 sid, serial#을

alter system kill session ''sid, serial#'';
해당명령으로 할당해제합니다.

다음내용참조하세요
1. v$session
주요 column
sid : session identifier
serial# : session serial number
username : 해당 session을 맺은 oracle username
lockwait : 대기중인 lock address

select sid, serial#, username, lockwait
from v$session ;

sid serial# username lockwait
------ --------- ----------- ----------
6 35 lto2 c2d2b3b4
8 70 system
12 15 lto
14 17 lto3 c2d2b438
15 30 sys

여기서 lockwait에 무언가가 기록 되어 있다면 해당 session은 특정
resource를 얻기 위해 대기중인 상태임
위의 예에서 lt02, lt03이 이에 해당함

2. v$lock
현재 system에 걸려 있는 lock들과 요구되어지는 lock들에 대한 정보
주요 column
sid : 해당 lock 또는 lock request의 소유 session
type : 현재 걸려있는 lock 또는 요구되는 lock의 type
주로 문제가 되고 관심을 가져야 하는 것은 tx type
(transaction)임
id1, id2 : 각 lock type별로 특수한 정보들이 기록됨
lock type이 tx일 경우 동일한 resource에 대한 lock을
요구하는 경우 각각의 id1, id2는 동일한 값을 갖는다.
lmode : 만약 해당 row가 걸려있는 lock에 대한 정보라면 lock mode가,
lock request에 대한 정보라면 none 이 들어 있음
request : 만약 해당 row가 걸려있는 lock에 대한 정보라면 none이,
lock request에 대한 정보라면 요구되는 lock mode가 들어 있음
* lock type, lock mode에 관한 자세한 내용은 ''oracle7 server concepts
manual'' chapter 10 data concurrency를 참조

select s.username, s.sid, s.serial#, l.type, l.id1, l.id2,
l.lmode, l.request
from v$session s, v$lock l
where s.sid = l.sid ;

username sid serial# type id1 id2 lmode request
--------- ---- -------- ----- ------- ------ ------- --------
lto2 6 35 tm 2294 0 rx none
lto2 6 35 tm 2295 0 rx none
lto2 6 35 tx 262167 87 none x
lto2 6 35 tx 327682 90 x none
lto 12 15 tm 2294 0 rx none
lto 12 15 tm 2295 0 rx none
lto 12 15 tx 262167 87 x none
lto3 14 17 tm 2294 0 rx none
lto3 14 17 tm 2295 0 rx none
lto3 14 17 tx 262167 87 none x
lto3 14 17 tx 196636 87 x none

* 다음 사용자들은 lock을 기다리고 있는 상태이다.
lto2 6 35 tx 262167 87 none x
lto3 4 17 tx 262167 87 none x

* 이들이 기다리고 있는 lock은 다음과 같다.
lto 12 15 tm 2294 0 rx none
lto 12 15 tm 2295 0 rx none
lto 12 15 tx 262167 87 x none

3. v$access
system에서 현재 lock이 걸려있는 object들과 이들을 access하고자 시도하는
session들에 대한 정보가 들어 있음
주요 column
sid : 현재 lock이 걸려있는 object를 access하고자 시도하는 session의 id
owner : lock이 걸려있는 object의 owner
object : lock이 걸려있는 object name

4. v$sqltext
주요 column들
address, hash_value : 특정 session이 수행하는 sql문을 확인하기 위해
v$session의 sql_address, sql_hash_value와 join한다.
sql_text : sql문

현재 sga영역에 존재하는 sql statement에 대한 정보가 들어있음
현재 특정 session이 수행하는 sql문을 조회하기 위해 다음 sql문을
이용한다.

select s.sid, s.serial#, s.username, a.sql_text
from v$sqltext a, v$session s
where s.sid = 11 and s.serial# = 9 -- session의 sid, serial#를 확인한
and a.address = s.sql_address -- 후 where조건에 기술
and a.hash_value = s.sql_hash_value ;

위에서 언급한 view들을 적절히 활용하여 문제의 lock을 걸고 있는 session을
찾아내어 alter system kill session ''sid, serial#'' ; 를 이용하여 해당
session을 kill시킨다.

시나리오 : lock이 걸린 table을 추측할 수 있을 경우
1. v$access 에서 해당 table에 lock을 잡고있는(요청하는) session
의 id를 확인
2. v$lock에서 위 1의 sid가 요청하는 resource를 잡고 있는 session을 확인
3. 필요하다면 v$sqltext를 보아서 실행중인 sql문을 확인
4. 위 2에서 확인된 session을 kill

 


 

반응형

'ORACLE > ADMIN' 카테고리의 다른 글

오라클 파라미터 관련 사이트 링크  (0) 2007.12.13
DATABASE LINK 사용법  (0) 2007.12.07
ORACLE relink  (0) 2007.08.07
Oradebug Command  (0) 2007.08.04
10g SYSAUX tablespace 줄이기  (0) 2007.08.02
Posted by [PineTree]
ORACLE/ADMIN2007. 8. 7. 02:34
반응형

다음과 같은 경우에는 자동으로 relink가 이루어짐

  • Oracle product install
  • Oracle에서 제공하는 installer를 이용한 patch 적용

manual하게 해줘야하는 경우
  • OS upgrade
  • OS system library에 변화가 일어난 경우 (OS patch에서 이루어짐)
  • 새로운 relink가 실패한 경우
  • initial startup 동안 Oracle 실행파일이 core dump를 일으킨 경우
  • Oracle patch 적용된 경우 (README에 명시된 경우에만!!!)

relink
  1. $ORACLE_HOME 변수 설정이 정확한지 체크 (" env | pg" $ORACLE_HOME이 절대경로인지확인)
  2. UNIX 환경변수 점검 (LIBPATH, LD_LIBRARY_PATH, SHLIB_PATH)
    setenv LD_LIBRARY_PATH ${ORACLE_HOME}/lib:${LD_LIBRARY_PATH}
    Solaris 경우
    Oracle 7.3.X, 8.0.X, or 8.1.X:
    $PATH에 /usr/ccs/bin 가 /usr/ucb 보다 앞에 있는지 확인
    32bit(non 9i) Oracle : LD_LIBRARY_PATH=$ORACLE_HOME/lib
    64bit(non 9i) Oracle : LD_LIBRARY_PATH=$ORACLE_HOME/lib, LD_LIBRARY_PATH_64=$ORACLE_HOME/lib64
    Oracle 9.X.X (64Bit) on Solaris (64Bit) OS : LD_LIBRARY_PATH=$ORACLE_HOME/lib32, LD_LIBRARY_PATH_64=$ORACLE_HOME/lib
    Oracle 9.X.X (32Bit) on Solaris (64Bit) OS : LD_LIBRARY_PATH=$ORACLE_HOME/lib
  3. DB가 shutdown된 상태인지와 listener가 내려간 상태인지 확인 (참고:component 가 제대로 설치되지않은 경우 fail남)
  4. Oracle 7.3.x
    For executables: oracle, exp, imp, sqlldr, tkprof
    cd $ORACLE_HOME/rdbms/lib
    make -f ins_rdbms.mk install
    For executables: svrmgrl, svrmgrm
    cd $ORACLE_HOME/svrmgr/lib
    make -f ins_svrmgr.mk linstall minstall (linstall is for svrmgrl, minstall is for svrmgrm)
    For executables: sqlplus
    cd $ORACLE_HOME/sqlplus/lib
    make -f ins_sqlplus.mk install
    For executables: dbsnmp, oemevent, oratclsh
    cd $ORACLE_HOME/network/lib
    make -f ins_agent.mk install
    For executables: names, namesctl
    cd $ORACLE_HOME/network/lib
    make -f ins_names.mk install
    For executables: tnslsnr, lsnrctl, tnsping, csmnl, trceval, trcroute
    cd $ORACLE_HOME/network/lib
    make -f ins_network.mk install
  5. Oracle 8.0.x
    For executables: oracle, exp, imp, sqlldr, tkprof, mig, dbv, orapwd, rman, svrmgrl, ogms, ogmsctl
    cd $ORACLE_HOME/rdbms/lib
    make -f ins_rdbms.mk install
    For executables: sqlplus
    cd $ORACLE_HOME/sqlplus/lib
    make -f ins_sqlplus.mk install
    For executables: dbsnmp, oemevent, oratclsh, libosm.so
    cd $ORACLE_HOME/network/lib
    make -f ins_oemagent.mk install
    For executables: tnslsnr, lsnrctl, namesctl, names, osslogin, trcasst, trcroute
    cd $ORACLE_HOME/network/lib
    make -f ins_network.mk install
  6. Oracle 8.1.X or 9.X.X
    cd $ORACLE_HOME/bin
    relink
    accepted values for parameter: all, oracle, network, client, client_sharedlib, interMedia, precomp, utilities, oemagent, ldap
    또는
    For executables: oracle, exp, imp, sqlldr, tkprof, mig, dbv, orapwd, rman, svrmgrl, ogms, ogmsctl #: cd $ORACLE_HOME/rdbms/lib
    make -f ins_rdbms.mk install
    For executables: sqlplus
    cd $ORACLE_HOME/sqlplus/lib
    make -f ins_sqlplus.mk install
    For executables: isqlplus
    cd $ORACLE_HOME/sqlplus/lib
    make -f ins_sqlplus install_isqlplus
    For executables: dbsnmp, oemevent, oratclsh
    cd $ORACLE_HOME/network/lib
    make -f ins_oemagent.mk install
    For executables: names, namesctl
    cd $ORACLE_HOME/network/lib
    make -f ins_names.mk install
    For executables: osslogin, trcasst, trcroute, onrsd, tnsping
    cd $ORACLE_HOME/network/lib
    make -f ins_net_client.mk install
    For executables: tnslsnr, lsnrctl
    cd $ORACLE_HOME/network/lib
    make -f ins_net_server.mk install
    For executables related to ldap (for example Oracle Internet Directory):
    cd $ORACLE_HOME/ldap/lib
    make -f ins_ldap.mk install


 
  For executables: sqlplus
 
  % cd $ORACLE_HOME/sqlplus/lib
  % make -f ins_sqlplus.mk install
 
  For executables: dbsnmp, oemevent, oratclsh, libosm.so
 
  % cd $ORACLE_HOME/network/lib
  % make -f ins_oemagent.mk install
 
  For executables: tnslsnr, lsnrctl, namesctl, names, osslogin, trcasst,
  trcroute
 
  % cd $ORACLE_HOME/network/lib 
  % make -f ins_network.mk install

 

 

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

:  How to Relink Oracle Database Software on UNIX
  문서 ID:  공지:131321.1 유형:  BULLETIN
  마지막 갱신 날짜:  15-MAY-2007 상태:  PUBLISHED


PURPOSE
-------

Provide relinking instructions for Oracle Database software
on UNIX platforms.

 
SCOPE & APPLICATION
-------------------

Anyone who maintains Oracle RDBMS software on a UNIX platform.


Relinking Oracle
================

Background:
Applications for UNIX are generally not distributed as complete executables. 
Oracle, like many application vendors who create products for UNIX, distribute
individual object files, library archives of object files, and some source
files which then get ?relinked? at the operating system level during
installation to create usable executables.  This guarantees a reliable
integration with functions provided by the OS system libraries.

Relinking occurs automatically under these circumstances:

 - An Oracle product has been installed with an Oracle provided installer.
 - An Oracle patch set has been applied via an Oracle provided installer. 

The following information has been added to the 'Certify' section of Metalink:

   General Notes For Oracle Database - Enterprise Edition:
   O/S Information:
   The vendors guarantee operating system binary compatibility; therefore, no
   reinstall or relink of the Oracle software is required when upgrading these
   operating systems unless specifically stated otherwise.

Relinking Oracle manually is suggested under the following circumstances
(even though the OS vendor may not require it):

 - An OS upgrade has occurred.
 - A change has been made to the OS system libraries.  This can occur during
   the application of an OS patch.
 - A new install failed during the relinking phase.
 - Individual Oracle executables core dump during initial startup.
 - An individual Oracle patch has been applied (however, explicit relink
   instructions are usually either included in the README or integrated into
   the patch install script)

Customers who want to (or have been advised to) manually relink should follow
the procedure below.

[Step 1] Log into the UNIX system as the Oracle software owner
==============================================================================
Typically this is the user 'oracle'.
 

[STEP 2] Verify that your $ORACLE_HOME is set correctly:
===============================================================================
For all Oracle Versions and Platforms, perform this basic environment check
first:
 
 % cd $ORACLE_HOME
 % pwd   

 ...Doing this will ensure that $ORACLE_HOME is set correctly in your current
    environment.
 

[Step 3] Verify and/or Configure the UNIX Environment for Proper Relinking:
===============================================================================
For all Oracle Versions and UNIX Platforms:
 The Platform specific environment variables LIBPATH, LD_LIBRARY_PATH, &
 SHLIB_PATH typically are already set to include system library locations like
 '/usr/lib'.  In most cases, you need only check what they are set to first,
 then add the $ORACLE_HOME/lib directory to them where appropriate.
 i.e.:  % setenv LD_LIBRARY_PATH ${ORACLE_HOME}/lib:${LD_LIBRARY_PATH}
 (see Note 131207.1 How to Set UNIX Environment Variables for help with
 setting UNIX environment variables)

If on AIX with:
--------------
   
    Oracle 7.3.X:
       - Set LIBPATH to include $ORACLE_HOME/lib
   
    Oracle 8.0.X:
       - Set LIBPATH to include $ORACLE_HOME/lib
       - Set LD_LIBRARY_PATH to include $ORACLE_HOME/lib and
         $ORACLE_HOME/network/lib (Required when using Oracle products that
         use Java)
       - Set LINK_CNTRL to L_PTHREADS_D7 if using AIX 4.3. ('oslevel' verifies
         OS version)
   
    Oracle 8.1.X, 9.X.X or 10.X.X:
       - For 8.1.5, set LINK_CNTRL to L_PTHREADS_D7
       - If not 8.1.5, ensure that LINK_CNTRL is not set
       - Set LIBPATH to include $ORACLE_HOME/lib
     

If on DATA GENERAL AVIION (DG) with:
-----------------------------------

    Oracle 7.3.X or 8.0.X:
       - Set LD_LIBRARY_PATH to include $ORACLE_HOME/lib
       - ensure TARGET_BINARY_INTERFACE is unset
   
    Oracle 8.1.X:
       - Set LD_LIBRARY_PATH to include
         $ORACLE_HOME/lib:$ORACLE_HOME/JRE/lib/PentiumPro/native_threads

If on HP-UX with:
----------------

    Oracle 7.3.X, 8.0.X, 8.1.X;
       - Set SHLIB_PATH to $ORACLE_HOME/lib
       If using 64bit 8i Oracle, also
       - Set LD_LIBRARY_PATH to $ORACLE_HOME/lib64
       - ensure LPATH is unset
 
    Oracle 9.X.X or 10.X.X;
       - ensure LPATH is unset

If on NCR with:
--------------

    Oracle 7.3.X, 8.0.X or 8.1.X:
       - Set LD_LIBRARY_PATH to include $ORACLE_HOME/lib:/usr/ccs/lib

If on SCO UNIXware with:
-----------------------

    Oracle 7.3.X or 8.0.X:
       - Set LD_LIBRARY_PATH to include $ORACLE_HOME/lib
   
    Oracle 8.1.X:
       - Set LD_LIBRARY_PATH to include
         $ORACLE_HOME/lib:$ORACLE_HOME/JRE/lib/x86at/native_threads

If on SGI with:
--------------

    32bit Oracle 7.3.X or 8.0.X:
       - Set LD_LIBRARY_PATH to include $ORACLE_HOME/lib
       - Set SGI_ABI to -32 

    64bit Oracle 8.0.X or 8.1.X (8i is only available in 64bit):
       - Set LD_LIBRARY_PATH to include $ORACLE_HOME/lib
       - Set SGI_ABI to -64
       - If one does not already exist, create the file compiler.defaults and
         set the COMPILER_DEFAULTS_PATH variable:

     In the Oracle software owner's $HOME directory, create a file called
     'compiler.defaults':
 
        % cd $HOME
        % echo "-DEFAULT:abi=64:isa=mips3:proc=r10k" > compiler.defaults

     Then set the environment variable COMPILER_DEFAULTS_PATH to point to the
     $HOME directory.
 
        % setenv COMPILER_DEFAULTS_PATH $HOME
 
     If this is not set, relinking will fail because the compiler defaults to
     MIPS4 objects although Oracle requires MIPS3.
       - Set LD_LIBRARY64_PATH to include the $ORACLE_HOME/lib and the
         $ORACLE_HOME/javavm/admin directories.
       - Set LD_LIBRARYN32_PATH to include the $ORACLE_HOME/lib32 directory.
         NOTE: LD_LIBRARY64_PATH & LD_LIBRARYN32_PATH must be undefined when
         installing software with Oracle Universal Installer.

If on SOLARIS (Sparc or Intel) with:
------------------------------------

    Oracle 7.3.X, 8.0.X, or 8.1.X:
       - Ensure that /usr/ccs/bin is before /usr/ucb in $PATH 
         % which ld   ....should return '/usr/ccs/bin/ld'

       If using 32bit(pre 9i) Oracle,
       - Set LD_LIBRARY_PATH=$ORACLE_HOME/lib

       If using 64bit(pre 9i) Oracle,
       - Set LD_LIBRARY_PATH=$ORACLE_HOME/lib
       - Set LD_LIBRARY_PATH_64=$ORACLE_HOME/lib64

    Oracle 9.X.X or higher:
       - LD_LIBRARY_PATH & LD_LIBRARY_PATH_64 do not need to be set to include
         a reference to $ORACLE_HOME/lib or $ORACLE_HOME/lib64 for a generic database
         software installation.
         (However they should not contain a reference to the ORACLE_HOME of another Oracle version)

If on Digital/Tru64, IBM/Sequent PTX, Linux or any other UNIX Platform not
mentioned above with:
------------------------------------------------------------------------------

    Oracle 7.3.X, 8.0.X, 8.1.X, 9.X.X or 10.X.X:
       - Set LD_LIBRARY_PATH to include $ORACLE_HOME/lib


[Step 4] For all Oracle Versions and UNIX Platforms:
===============================================================================
Verify that you performed Step 2 correctly:

 % env|pg  ....make sure that you see the correct absolute path for
   $ORACLE_HOME in the variable definitions.
 

[Step 5] For all Oracle Versions and UNIX Platforms:
===============================================================================
Verify umask is set correctly:

 % umask

This must return 022.  If it does not, set umask to 022.

 % umask 022
 % umask

[Step 6] Run the OS Commands to Relink Oracle:
===============================================================================
Important Note:  Before relinking Oracle, shut down both the database and the
                 listener.
Important Note:  The following commands will output a lot of text to your
                 session window.
Important Note:  If relinking a client installation, it's expected that some
                 aspects of the following commands will fail if the components
                 were not originally installed.

For all UNIX platforms:

Oracle 7.3.x
------------
 For executables:  oracle, exp, imp, sqlldr, tkprof

      % cd $ORACLE_HOME/rdbms/lib
      % make -f ins_rdbms.mk install

 For executables:  svrmgrl, svrmgrm

      % cd $ORACLE_HOME/svrmgr/lib
      % make -f ins_svrmgr.mk linstall minstall      <- linstall is for svrmgrl,
                                                        minstall is for svrmgrm

 For executables:  sqlplus

      % cd $ORACLE_HOME/sqlplus/lib
      % make -f ins_sqlplus.mk install

 For executables:  dbsnmp, oemevent, oratclsh

      % cd $ORACLE_HOME/network/lib
      % make -f ins_agent.mk install

 For executables:  names, namesctl

      % cd $ORACLE_HOME/network/lib
      % make -f ins_names.mk install

 For executables:  tnslsnr, lsnrctl, tnsping, csmnl, trceval, trcroute

      % cd $ORACLE_HOME/network/lib
      % make -f ins_network.mk install


Oracle 8.0.x
------------
 For executables:  oracle, exp, imp, sqlldr, tkprof, mig, dbv, orapwd, rman,
                   svrmgrl, ogms, ogmsctl

      % cd $ORACLE_HOME/rdbms/lib
      % make -f ins_rdbms.mk install

 For executables:  sqlplus

      % cd $ORACLE_HOME/sqlplus/lib
      % make -f ins_sqlplus.mk install

 For executables:  dbsnmp, oemevent, oratclsh, libosm.so

      % cd $ORACLE_HOME/network/lib
      % make -f ins_oemagent.mk install

 For executables:  tnslsnr, lsnrctl, namesctl, names, osslogin, trcasst,
                   trcroute

      % cd $ORACLE_HOME/network/lib
      % make -f ins_network.mk install


Oracle 8.1.X, 9.X.X or 10.X.X
------------------------------
  *** NEW IN 8i AND ABOVE ***

   A 'relink' script is provided in the $ORACLE_HOME/bin directory.
     % cd $ORACLE_HOME/bin
     % relink      ...this will display all of the command's options.
       usage: relink <parameter>
       accepted values for parameter: all, oracle, network, client,
       client_sharedlib, interMedia, precomp, utilities, oemagent, ldap
 
  Note: ldap option is available only from 9i. In 8i, you would have to manually relink
  ldap.

  You can relink most of the executables associated with an Oracle Server Installation
  by running the following command:
     % relink all   
  This will not relink every single executable Oracle provides(you can
  discern which executables were relinked by checking their timestamp with
  'ls -l' in the $ORACLE_HOME/bin directory).  However, 'relink all' will
  recreate the shared libraries that most executables rely on and thereby
  resolve most issues that require a proper relink.

 
 -or-

  Since the 'relink' command merely calls the traditional 'make' commands, you
  still have the option of running the 'make' commands independently:

 For executables:  oracle, exp, imp, sqlldr, tkprof, mig, dbv, orapwd, rman,
                   svrmgrl, ogms, ogmsctl

      % cd $ORACLE_HOME/rdbms/lib
      % make -f ins_rdbms.mk install

      NOTE: After relinking the oracle executable, make sure that the
      permissions on the executable are 6751 (-rwsr-s--x). If they are
      not, run the following command as the Oracle software owner:

      % cd $ORACLE_HOME/bin
      % chmod 6751 oracle

 For executables:  sqlplus

      % cd $ORACLE_HOME/sqlplus/lib
      % make -f ins_sqlplus.mk install

 For executables:  isqlplus

      % cd $ORACLE_HOME/sqlplus/lib
      % make -f ins_sqlplus install_isqlplus

 For executables:  dbsnmp, oemevent, oratclsh

      % cd $ORACLE_HOME/network/lib
      % make -f ins_oemagent.mk install

      NOTE: After relinking the dbsnmp executable, it is necessary to run
      the following commands as root (so that the ownership/permissions on
      the executable are correct):

      # cd $ORACLE_HOME/bin
      # chown root dbsnmp
      # chmod 6750 dbsnmp

      @ References: Note 233559.1 and Bug 2858326

 For executables:  names, namesctl

      % cd $ORACLE_HOME/network/lib
      % make -f ins_names.mk install

 For executables:  osslogin, trcasst, trcroute, onrsd, tnsping

      % cd $ORACLE_HOME/network/lib
      % make -f ins_net_client.mk install

 For executables:  tnslsnr, lsnrctl

      % cd $ORACLE_HOME/network/lib
      % make -f ins_net_server.mk install

 For executables related to ldap (for example Oracle Internet Directory):

      % cd $ORACLE_HOME/ldap/lib
      % make -f ins_ldap.mk install

How to Tell if Relinking Was Successful:
===============================================================================
If relinking was successful, the make command will eventually return to the OS
prompt without an error. There will NOT be a 'Relinking Successful' type
message.


If You Receive an Error Message During Relinking:
===============================================================================
Confirm that the message you received is an actual fatal error and not a
warning. Relinking errors usually terminate the relinking process and contain
verbage similar to the following:
'Fatal error', 'Ld: fatal', 'Exit Code 1'
While warnings will look similar to: 'ld: warning: option -YP appears more than
once, first setting taken' and can most often be ignored.

If you receive an error that terminates the relinking process, your first step
should be to extract the relevant information about the error from the make
output:

This can be broken down into three basic steps:
 1. Identify the OS utility that is returning the error.
    'ld', 'make', 'cc', 'mv', 'cp', 'ar' are common sources.
 2. Identify the type of error:
    'Permission Denied', 'Undefined Symbol', 'File Not Found' are common types.
 3. Identify the files or symbols involved.

Using the information from above as keywords, search Oracle's Metalink
repository (MetaLink.oracle.com) for previous occurrences of the same error. 
If no previous occurances are found or a solution is not provided, generate an
iTAR that includes the complete error text.

Help setting environment variables.
==============================================================================
See Note 131207.1 How to Set UNIX Environment Variables
for help with setting UNIX environment variables.


Relinking with Orainst:
===============================================================================
For Oracle7 & Oracle8 only, the following document illustrates how to relink
with the 'orainst' utility:
   Note 1032747.6 HOW TO RELINK ORACLE USING THE 7.3.X INSTALLER
While 'orainst' will run the same commands as [Step 4], performing [Step 4]
manually from a UNIX shell is the preferred approach.


RELATED DOCUMENTS
-----------------

Note 131207.1   How to Set UNIX Environment Variables
Note 109621.1   HP/UX: LD_LIBRARY_PATH and SHLIB_PATH
Note 1032747.6  HOW TO RELINK ORACLE USING THE 7.3.X INSTALLER
Bug 1337908     THE $ORACLE_HOME/BIN/RELINK SCRIPT DOES NOT RELINK EXP, IMP
                  SQLLOADER

 

반응형

'ORACLE > ADMIN' 카테고리의 다른 글

DATABASE LINK 사용법  (0) 2007.12.07
oracle lock  (0) 2007.08.14
Oradebug Command  (0) 2007.08.04
10g SYSAUX tablespace 줄이기  (0) 2007.08.02
RMAN  (0) 2007.07.24
Posted by [PineTree]
ORACLE/ADMIN2007. 8. 4. 00:54
반응형

Oracle 온라인 세미나 자료를 근거로..

 

초간단히 Summary

 

 

Oradebug 사용법
- 적절한 권한을 가진 DB USER 로 sqlplus 로 접속
- 반드시 덤프할 오라클 프로세스를 지정한 후 사용

- SYNTAX : SQL>oradebug command <option>

일반 유저도 Try

SQL> show user
USER is "SCOTT"
SQL> oradebug setmypid
ORA-01031: insufficient privileges

 

SQL> conn / as sysdba
Connected.
SQL> show user
USER is "SYS"
SQL> oradebug setmypid
Statement processed.

==> 자신의 process ID 지정 해서 dump

 

일반 유저를 찾아서 지정 해보기

보통은[AIX 환경] ps aux | sort -k3 으로 cpu 과도 사용 Unix process ID 를 찾은 후

지정 해서 dump 를 떨군 후 분석을 하면 될듯

 

## Scott User 의 Process ID 찾기
SQL> select username, sid, serial#,PADDR from v$session where username ='SCOTT';

USERNAME                              SID    SERIAL# PADDR
------------------------------ ---------- ---------- --------
SCOTT                                  28         54 46CB5768

SQL> select * from v$process where addr = '46CB5768';

ADDR            PID SPID      USERNAME           SERIAL#
-------- ---------- --------- --------------- ----------
TERMINAL                       PROGRAM
------------------------------ ------------------------------------------------
TRACEID
--------------------------------------------------------------------------------
B LATCHWAI LATCHSPI
- -------- --------
46CB5768         29 283314    oracle                   2
pts/8                          oracle@seldw (TNS V1-V3)

 

## Unix 환경에서 파악

[CRAFT]seldw:/app/oracle/tg> ps -ef| grep 283314
  oracle 282448 290026   0 10:45:26  pts/7  0:00 grep 283314
  oracle 283314 284036   0 10:42:54      -  0:00 oracleCRAFT (DESCRIPTION=(LOCAL=YES)(ADDRESS=(PROTOCOL=beq)))

 

SQL> oradebug unlimit
Statement processed.
==> Dump 화일 무제한으로 설정
SQL> oradebug setospid 283314
Oracle pid: 29, Unix process pid: 283314, image: oracle@seldw (TNS V1-V3)

==> Scott Process ID 를 지정 해서 dump
SQL> oradebug tracefile_name
Statement processed.
==> dump 화일명 체크

==> 나오지 않는다.

SQL> oradebug dump errorstack 3
Statement processed.
==> dump 화일에 실제 Write 되도록 command 를 날리기

SQL> oradebug tracefile_name
/app/oracle/admin/CRAFT/udump/ora_283314_craft.trc
==> 이제 화일명이 보임

 

# Event 로 Trace 걸기
SQL> oradebug setospid 283314
Oracle pid: 29, Unix process pid: 283314, image: oracle@seldw (TNS V1-V3)

# 10046 Event 에 대해서 Trace 생성도록 설정 하기
SQL> oradebug event 10046 trace name context forever, level 12
Statement processed.
SQL> oradebug event 10046 trace name context off
Statement processed.
SQL> oradebug tracefile_name
/app/oracle/admin/CRAFT/udump/ora_283314_craft.trc

 

CASE 1 : 특정 프로세스가 SPIN 또는 HANG
SQL> oradebug dump errorstack 3 .. 3분단위 3번수행
SQL> oradebug dump processstate 10 .. 비교1
SQL> oradebug event 942 errorstack 10 .. 비교2

 

CASE 1 은 특정 프로세스가 SPIN 또는 HANG 으로 보이는 경우입니다.
(1) Oradebug setospid 해당 프로세스를 덤프대상으로 지정하고
(2) Oradebug dump errorstack 3 으로 ERRORSTACK 을 2-3번 떠서
(3) CALL STACK 부분이 변하고 있는지 비교해봅니다.
변하고 있으면 SPIN 이고, 변하지 않고 있으면 HANG 이라고 결론 내릴 수 있습니다.
ERRORSTACK LEVEL 3 에 PROCESSSTATE DUMP 가 포함되므로
PROCESSSTATE DUMP 를 별도로 수행할 필요가 없습니다.
EVENT Command 에서 ERRORSTACK 를 설정할 때와 비교해보면, EVENT Command 는 해당 에러가 발생하는
시점에 에러스택이 생성되는 것이고, DUMP Command 는 Oradebug Command 를 수행하자마자 에러스택이
생성됩니다.

 

CASE 2 : 데이터베이스 SPIN 또는 HANG
SQL> oradebug dump systemstate 10 .. 3분간격 3번수행
= alter session set events 'immediate trace name SYSTEMSTATE level 10';


케이스 두번째, 드디어 SYSTEMSTATE DUMP 입니다.
이 Command 는 아마도 oradebug 에서 가장 많이 사용되는 명령어로
alter session set events 'immediate trace name SYSTEMSTATE level 10'; 과 같습니다.
보시다시피 Oradebug Command 가 훨씬 간단하고 Rule 만 알면 외울 필요도 없습니다.
인스턴스 HANG 시 3분 간격으로 3번을 수행한 결과가 있어야 Slow Performance 인지,

진짜 HANG 이였는지 판단할 수 있습니다.


SQL> oradebug dump systemstate 10
ORA-00074: no process has been specified
SQL> alter session set events 'immediate trace name systemstate level 10';

Session altered.

 

CASE 3 : 프로세스 메모리가 비정상 증가하는 경우
SQL> oradebug dump heapdump 5 .. PGA+UGA


CASE 4 : SGA 부족으로 ORA-4031 가 발생하는 경우
SQL> oradebug dump heapdump 2 .. SGA
event="4031 trace name HEAPDUMP level 2" in initSID.ora

 

CASE 6 : 리커버리시 데이터파일 상태 불일치 에러시
SQL> oradebug dump controlf 10
SQL> oradebug dump file_hdrs 10
==>테스트시  임의의 프로세스 지정을 해야 trace 화일이 생성 된다.

SQL> oradebug dump controlf 10
ORA-00074: no process has been specified
SQL> oradebug setospid 283314
Oracle pid: 29, Unix process pid: 283314, image: oracle@seldw (TNS V1-V3)
SQL> oradebug dump controlf 10
Statement processed.
SQL> oradebug tracefile_name
/app/oracle/admin/CRAFT/udump/ora_283314_craft.trc
SQL> oradebug dump file_hdrs 10
Statement processed.
SQL> exit

 

SQL> oradebug hanganalyze 3
Hang Analysis in /app/oracle/admin/CRAFT/udump/ora_89222_craft.trc
프로세스 또는 인스턴스 HANG 진단 및 분석시 유용
HANGANALYZE [level]
1-2 Only HANGANALYZE output, no process dump
3 Level 2 + HANG 으로 추정되는 프로세스 덤프
4 Level 3 + WAIT CHAIN 의 BLOCKER 프로세스
5 Level 4 + WAIT CHAIN 의 모든 프로세스
10 모든 프로세스 덤프

SQL> oradebug hanganalyze 3 .. 권장레벨, 또는 1
Hang Analysis in /home/ora920/ora920_1190.trc
HANGANALYZE TRACEFILE SECTIONS 설명
 CYCLES : Deadlock 관계 세션들의 CHAIN
 BLOCKER OF MANY SESSIONS : 10개 이상의 세션을 blocking 하는 BLOCKER 제시
 OPEN CHAINS : 1개 이상의 타 세션들을 blocking 하는 세션이 포함된 WAIT CHAIN
 OTHER CHAINS : OPEN CHAIN 의 세션들과 간접적으로 관련있는 프로세스 리스트

EXTRA INFORMATION : 덤프 레벨에 따른 프로세스 Errorstack 등의 추가 정보
STATE OF NODES : 모든 세션들 DEPENDENCY GRAPH
  IN_HANG - HANG
  IGN - IGNORE
  LEAF - A waiting leaf node
  LEAF_NW - A running leaf node
  NLEAF - STUCK
세션 STATE 설명입니다.
IN_HANG : 심각한 상태로, 이 상태의 세션은 DEADLOCK 가능성이 있습니다 .
IGN and IGN_DMP : IDLE 상태이므로 무시하셔도 됩니다.
LEAF and LEAF_NW : 이 상태로 Wait Chain 의 가장 앞에 있으면,

                             바로 이 세션이 Blocker 세션입니다.
NLEAF : STUCK 세션으로, 다른 세션이 리소스를 잡고 안 놓아 주는 상태

           로 Performance 이슈일가능성이 높습니다.
 
DB HANG 이것만은 알아두세요!!!
데이터베이스 HANG : DB 연결될 때
SQL> oradebug setmypid

자신의 Process ID 지정 아마도, trace file 생성을 위해서 임의로 지정하는 듯
SQL> oradebug unlimit

Trace file 무한으로 설정
SQL> oradebug hanganalyze 1 

빨리 Blocker 찾으세요

Trace 화일을 통해서 문제의 Process ID 를 서치

심도 있게 더 깊이 분석시 아마도 setospid를 통해서 Blocker ID 를 찾은수

다시 trace 를 시도 하면 될듯
SQL> oradebug dump systemstate 10 ..

다른세션에서 3분3번

 

데이터베이스 HANG : DB 연결안 될 때
$ dbx .a PID $ORACLE_HOME/bin/oracle .. Oracle PID
dbx) call ksudss(10) or print ksudss(10)
dbx) detach

 

 

반응형

'ORACLE > ADMIN' 카테고리의 다른 글

oracle lock  (0) 2007.08.14
ORACLE relink  (0) 2007.08.07
10g SYSAUX tablespace 줄이기  (0) 2007.08.02
RMAN  (0) 2007.07.24
ORA-01555 (Snapshot too old) 에러 발생 원인과 대처 방법  (0) 2007.07.06
Posted by [PineTree]
ORACLE/ADMIN2007. 8. 2. 20:41
반응형

sysaux tablespace는 10g에서 새로 추가된 system default tablespace의 하나로 기존에 system tablespace에

 

저장되던 각종 ORACLE OPTION들의 schema가 저장되며 10g의 new feature인 AWR(auto workload repository) 데이터들이

 

저장되는 tablespace 입니다.

 

awr정보는 default로 1시간에 한번씩 data를 gathering하고 그 정보를 7일동안 저장하게 되어 있습니다.

 

7일이 지나면 가장 오래된 awr정보를 자동으로 삭제하게끔 되어 있습니다.

 

위의 내용대로 라면 특별한 ORACLE OPTION들을 사용하지 않는 한 awr정보를 저장하는 sysaux tablespace의 크기는

 

일정기간 늘어나다가(retention기간) 그 일정기간이 지나면 크기에 변화가 거의 없어야 정상일 것이라 생각됩니다만...

 

제가 지금 지원하고 있는 곳의 경우

 

작년 10월경에 새로 설치하고 운영중인 10gR2 의 sysaux tablespace가 지속적으로 점점 커지는 현상이 발생 했습니다.

 

처음 설치시 1G로 크기를 설정했는데 시간이 지날 수록 점점 늘어나더니 지금은 4G가 되었습니다.

 

그래서 이래저래 찾아보니 awr정보는 7일간 저장되지만 주기적으로 실행하는 table analyze 정보는

 

default로 31일 동안 저장이 된다고 합니다.

 

31일 동안 data가 저장되고 삭제되는 과정에서 index의 크기가 지속적으로 늘어나는것이

 

sysaux의 크기가 증가하는 원인이 되었습니다.

 

해결책

 

## SYSAUX tablespace를 어떤 owner가 얼마만큼의 크기를 차지하고 있는지 다음의 query로 확인 합니다.

 

SQL> select occupant_name, space_usage_kbytes/1024 "MB"
   from v$sysaux_occupants
   order by space_usage_kbytes

 

OCCUPANT_NAME                          MB                                                            
------------------------------ ----------                                                            
XDB                                            0                                                            
XSAMD                                       0                                                            
ODM                                           0                                                            
STATSPACK                                0                                                            
ORDIM                                        0                                                            
ORDIM/SQLMM                           0                                                            
TEXT                                          0                                                            
ULTRASEARCH_DEMO_USER        0                                                            
EM_MONITORING_USER               0                                                            
EXPRESSION_FILTER                   0                                                            
ULTRASEARCH                            0                                                            
EM                                             0                                                            
ORDIM/PLUGINS                          0                                                            
SDO                                            0                                                            
TSM                                           .25                                                            
JOB_SCHEDULER                         .375                                                            
STREAMS                                    .5                                                            
AO                                              .75                                                            
XSOQHIST                                   .75                                                            
LOGSTDBY                                  .875                                                            
SM/OTHER                                4.9375                                                            
LOGMNR                                   5.875                                                            
WM                                           6.1875                                                            
SM/ADVISOR                          110.9375                                                            
SM/AWR                                 501.875                                                            
SM/OPTSTAT                        3198.25  => SM/OPTSTAT 가 가장 많은 공간 차지(통계정보 관련 schema)


 

## SYSAUX tablespace에 어떤 segment가 가장 많은 공간을 차지하는지 조사

 

select owner, segment_name, segment_type, bytes/1024/1024

from dba_segments
where tablespace_name = 'SYSAUX'
order by bytes

....
....

SYS
I_WRI$_OPTSTAT_HH_OBJ_ICOL_ST
INDEX                          152

SYS
SYS_LOB0000788324C00004$$
LOBSEGMENT                     200

SYS
WRI$_OPTSTAT_HISTHEAD_HISTORY
TABLE                          219

SYS
I_WRI$_OPTSTAT_H_ST
INDEX                          653

SYS
WRI$_OPTSTAT_HISTGRM_HISTORY
TABLE                          840

SYS
I_WRI$_OPTSTAT_H_OBJ#_ICOL#_ST
INDEX                         1219

 

조회 결과 optstat관련된 table과 index가 많은 공간을 차지 하고 있음.

 

## 통계정보를 보관하는 주기를 확인

 

SQL> select dbms_stats.get_stats_history_retention from dual;

 

GET_STATS_HISTORY_RETENTION
---------------------------
                         31

 

## 보관주기를 줄인다. 7일로 줄일경우

 

SQL> exec dbms_stats.alter_stats_history_retention(7);

 

SQL> select dbms_stats.get_stats_history_retention from dual;

 

GET_STATS_HISTORY_RETENTION
---------------------------
                         7

 

## SYSAUX에 저장된 기존의 old 통계정보를 purge한다.

 

(예제는 2006년 10월 10일 이전의 data를 삭제함)

 

SQL> exec DBMS_STATS.PURGE_STATS(to_timestamp_tz('10-10-2006 00:00:00 Asia/Seoul','DD-MM-YYYY HH24:MI:SS TZR'));

 

통계정보 data를 purge하더라도 기존에 할당된 segment의 크기는 줄어들지 않기 때문에 SYSAUX의 free space를 확보하려면


table과 index를 reorg해야 된다.


여기서 10g의 새로운 기능인 segment shrink를 사용하시면 됩니다.

 

alter table WRI$_OPTSTAT_HISTGRM_HISTORY enable row movement;

 

alter table WRI$_OPTSTAT_HISTGRM_HISTORY shrink space;

 

--> WRI$_OPTSTAT_HISTGRM_HISTORY table에 function-based index가 걸려 있어
    shrink space 명령이 정상 실행되지 않습니다.

 

일단 WRI$_OPTSTAT_HISTGRM_HISTORY table에 걸려있는 function-based index인


I_WRI$_OPTSTAT_H_OBJ#_ICOL#_ST와 I_WRI$_OPTSTAT_H_ST를 drop하고 table shrink space명령을 실행한 후


function-based index인 I_WRI$_OPTSTAT_H_OBJ#_ICOL#_ST와 I_WRI$_OPTSTAT_H_ST를 재생성 해 줍니다.

 

1. drop indexes

 

drop전에 index를 생성하는 구문을 미리 뽑아 놓은다.

 

인덱스 생성 구문은 dbms_metadata를 사용하여 뽑아냄.

 

set long 10000


select DBMS_METADATA.GET_DDL('INDEX','I_WRI$_OPTSTAT_H_OBJ#_ICOL#_ST','SYS') from dual;


select DBMS_METADATA.GET_DDL('INDEX','I_WRI$_OPTSTAT_H_ST','SYS') from dual;


DROP INDEX "SYS"."I_WRI$_OPTSTAT_H_OBJ#_ICOL#_ST" ;


DROP INDEX "SYS"."I_WRI$_OPTSTAT_H_ST" ;

 

2.shrink table

 

alter table WRI$_OPTSTAT_HISTGRM_HISTORY enable row movement;


alter table WRI$_OPTSTAT_HISTGRM_HISTORY shrink space;


alter table WRI$_OPTSTAT_HISTGRM_HISTORY disable row movement;

 

## 실제로 크기가 줄었는지 확인


SQL> select occupant_name, space_usage_kbytes/1024 "MB"
   from v$sysaux_occupants
   order by space_usage_kbytes

OCCUPANT_NAME                                                            MB
---------------------------------------------------------------- ----------
XDB                                                                          0
XSAMD                                                                     0
ODM                                                                         0
STATSPACK                                                              0
ORDIM                                                                      0
ORDIM/SQLMM                                                         0
TEXT                                                                        0
ULTRASEARCH_DEMO_USER                                      0
EM_MONITORING_USER                                             0
EXPRESSION_FILTER                                                 0
ULTRASEARCH                                                          0
EM                                                                           0
ORDIM/PLUGINS                                                        0
SDO                                                                          0
TSM                                                                        .25
JOB_SCHEDULER                                                     .375
STREAMS                                                                .5
AO                                                                          .75
XSOQHIST                                                               .75
LOGSTDBY                                                              .875
SM/OTHER                                                             4.9375
LOGMNR                                                                5.875
WM                                                                        6.1875
SM/ADVISOR                                                       110.9375
SM/AWR                                                              511.4375
SM/OPTSTAT                                                       667.125 --> 3G에서 670M로 줄어듬.


3. recreate indexes

 

alter session set workarea_size_policy=manual;


alter session set sort_area_size=104857600

;

CREATE INDEX "SYS"."I_WRI$_OPTSTAT_H_OBJ#_ICOL#_ST"
ON "SYS"."WRI$_OPTSTAT_HISTGRM_HISTORY" ("OBJ#", "INTCOL#", SYS_EXTRACT_UTC("SAVTIME"))
PCTFREE 10 INITRANS 2 MAXTRANS 255 COMPUTE STATISTICS
STORAGE(INITIAL 65536 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT)
TABLESPACE "SYSAUX" nologging;

 

CREATE INDEX "SYS"."I_WRI$_OPTSTAT_H_ST"
ON "SYS"."WRI$_OPTSTAT_HISTGRM_HISTORY" (SYS_EXTRACT_UTC("SAVTIME"))
PCTFREE 10 INITRANS 2 MAXTRANS 255 COMPUTE STATISTICS
STORAGE(INITIAL 65536 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT)
TABLESPACE "SYSAUX" nologging;

 

SQL> select occupant_name, space_usage_kbytes/1024 "MB"
   from v$sysaux_occupants
   order by space_usage_kbytes

OCCUPANT_NAME                                                            MB
---------------------------------------------------------------- ----------
XDB                                                                          0
XSAMD                                                                     0
ODM                                                                         0
STATSPACK                                                              0
ORDIM                                                                      0
ORDIM/SQLMM                                                         0
TEXT                                                                        0
ULTRASEARCH_DEMO_USER                                      0
EM_MONITORING_USER                                             0
EXPRESSION_FILTER                                                 0
ULTRASEARCH                                                          0
EM                                                                           0
ORDIM/PLUGINS                                                        0
SDO                                                                          0
TSM                                                                         .25
JOB_SCHEDULER                                                      .375
STREAMS                                                                 .5
AO                                                                           .75
XSOQHIST                                                                .75
LOGSTDBY                                                               .875
SM/OTHER                                                             4.9375
LOGMNR                                                                5.875
WM                                                                       6.1875
SM/ADVISOR                                                      110.9375
SM/AWR                                                             511.4375
SM/OPTSTAT                                                      947.125  index 재생성 후 670M에서 950M로 변경

 

## segment 크기 조회

select owner, segment_name, segment_type, bytes/1024/1024
from dba_segments
where tablespace_name = 'SYSAUX'
order by bytes

 

SYS
I_WRI$_OPTSTAT_H_ST
INDEX                          120

SYS
I_WRI$_OPTSTAT_HH_OBJ_ICOL_ST
INDEX                          155

SYS
I_WRI$_OPTSTAT_H_OBJ#_ICOL#_ST
INDEX                          160

SYS
WRI$_OPTSTAT_HISTGRM_HISTORY
TABLE                      177.875

SYS
SYS_LOB0000788324C00004$$
LOBSEGMENT                     200

SYS
WRI$_OPTSTAT_HISTHEAD_HISTORY
TABLE                          219


## SYSAUX TABLESPACE의 Free space 조회

 

select tablespace_name, sum(bytes)/1024/1024
from dba_free_space
where tablespace_name = 'SYSAUX'
group by tablespace_name;

 

TABLESPACE_NAME                SUM(BYTES)/1024/1024
------------------------------ --------------------
SYSAUX                                    2892.9375


전체 작업시간은 한 30분정도 되었던 것 같습니다.


아무래도 운영시간에 하는건 부담이 되니 system에 부하가 적은 시간대에 하시는 것이 좋을 것 같습니다.

 

적고 나니 좀 길죠.

 

도움 되셨으면 합니다. 좀 이상한 부분있으면 지적해 주시면 감사하겠습니다.

 

 

출처 :   http://cafe.naver.com/prodba/833  

 

반응형

'ORACLE > ADMIN' 카테고리의 다른 글

ORACLE relink  (0) 2007.08.07
Oradebug Command  (0) 2007.08.04
RMAN  (0) 2007.07.24
ORA-01555 (Snapshot too old) 에러 발생 원인과 대처 방법  (0) 2007.07.06
오라클9i 데이타베이스 초기화 매개변수(전부) 설명  (0) 2007.06.30
Posted by [PineTree]
ORACLE/ADMIN2007. 7. 24. 02:30
반응형
Oracle 8 NEW : Recovery manager 란 ?

Oracle 8 은 새로운 backup와 recovery 방법인 Recovery manager 를 제공한다.
Recovery manager(이하 RMAN) 는 backup,restore,recover process를 관리하는
tool 이다. Oracle Enterprise Manager 를 통해 GUI mode 로 가능하고,
rman 이라는 command line interface 를 함께 제공한다.

특히, OS device control 기능이 보완 되었기 때문에, 현재 backup catalog 를
유지하고, 이 정보를 이용해 OS level 에서 file 을 auto-restore 해 주기
때문에, database recovery 전에 file 을 manual 하게 restore 할 필요가
없어졌다.

Incremental backup 을 제공하고, backup 이나 restore 중에 current block
detection 을 해 주며(v$backup_corruption, v$copy_corruption 또는 alert
log 에 report), Rman 작업시에 parallelization 을 제공하며, open database
backup 동안 특별한 redo 를 발생하지 않는다.


- 구조

Recovery
manager in OEM(oracle
enterprise ---> Database
manager) <--- (catalog)
or RMAN

/| |
| |/

DATABASE ---> OS
(target to backup) <--- Device


- 구성 요소 설명

1) recovery manager
Command 를 해석하고, backup, restore, recover 를 실행하기 위해 target
database 로 command 를 전달한다. recovery catalog 를 update 한다. 실행
과정을 조정, 모니터링 한다.

2) Target database
backup,restore,recovery action 이 수행될 데이타베이스

3) Recovery Catalog
Information 저장장소. 즉, target database 의 물리적 스키마, datafile 과
archivelog 의 backup sets 과 pieces, backup script 등을 포함하고 있음.
rman 작업시 recovery catalog 정보를 이용한다.

4) channel
allocation channel 은 target database 의 backup,restore,recover 에 대한
server process 초기화를 한다. 즉, 이 channel 은 disk 를 포함 기타 OS
device 를 지정하게 되며, 이 갯수에 따라 parallelization 의 degree 가 결정
된다.


- recovery catalog 를 사용할 것인지를 결정하기
catalog 없이 RMAN 을 사용할 때의 단점은 recovery catalog 의 overhead 가
없는 대신, Point-In-Time recovery 를 쉽게 할 수 없다. 또한, control file
손상시에 recovery 할 수 없고, stored script 를 사용할 수 없다.
(datafile 이 20개 이상일 경우에는 recovery catalog 사용을 권장한다.)


- Setup

가. Recovery catalog 생성

1. Backup(target) db 외의 별도의 db 생성 (8.0.3 이상)

2. catalog DB 에 분리된 tablespace 생성

create tablespace rcvcat datafile '/oracle/rcvcat/rcvcat01.dbf'
size 20 M;

3. catalog 의 owner 생성과 권한부여

create user rman identified by rman
temporary tablespace temp
default tablespace rcvcat;

grant dba,connect,resource,recovery_catalog_owner to rman;

4. catalog 저장에 필요한 object 생성

cd $ORACLE_HOME/rdbms/admin
sqlplus rman/rman
@catrman

나. Recovery manager 기동

1. recovery catalog DB 를 사용하는 경우

rman target \"system/manager\" rcvcat \"rman/rman@orabeta1\"

(orabeta1 은 catalog DB 로 접속하는 tnsname 입니다.
즉, sqlplus rman/rman@orabeta1 하면, catalog db 와 접속되어야 합니다.)

2. recovery catalog DB 를 사용하지 않는 경우
rman target system/manager@target nocatalog

위 경우 모두, target database 를 catalog 에 등록해야 한다.
RMAN> register database;

다. Backup 시작
- Backup 은 database 가 open 또는 close(close 후에는 반드시 mount
상태이어야 한다)
- Backup 의 단위
full database
tablespace
datafile
control file
archived logs
- Backup 의 예

--full database

run {
allocate channel dev1 type disk;
allocate channel dev2 type disk;
backup full filesperset 2
(database format '/user7/ora8/backup.%n_%p') ;
release channel dev1;
release channel dev2;
}

-- tablespace

run {
allocate channel dev_1 type disk ;
backup incremental level 0
filesperset 1
(tablespace system channel dev_1 format '/vol312/net8%d_%u');
release channel dev_1;

}


-- datafile

run{
allocate channel dev1 type disk;
copy datafile "/vo3/orabeta6/backup/copy_tools.dbf"
to "/vo3/orabeta6/oradata/orabeta6/tools01.dbf"
tag "org_tools";
release channel dev1;
}


-- archived logs

create script beta_arch_full {
allocate channel dev1 type disk;
allocate channel dev2 type disk;
backup full filesperset 10
(archivelog all delete input
format '/vo3/orabeta6/backup/beta_arch.%s_%p') ;
release channel dev1;
release channel dev2;
}

-- backup to tape

run {
allocate channel t1 type 'sbt_tape';
backup
format 'dbfull_sunday_s%s_t%t'
tag 'Sunday full backup'
(database);
}

라. Restore

- Backup 으로 부터 원래 위치로 복원

- Archive log file 은 manual 하게 restore 할 수도 있고, 필요하다면
recovery 시 자동으로 restore 된다.

restore (archivelog all| like <filename | <archivelog range>);

- restore 명령
database : restore (database);
tablespace : restore (tablespace <name>,...,<name>);
datafile : restore (datafile <name>,...,<name>);
control file : restore control file to location;

- recovery 시에 database 는 어떤 상태에 있어야 하는가 ?
1) control file restore - not mount
SVRMGRL> startup nomount

2) whole database, or system tablespace - not open
SVRMGRL> startup mount

3) tablespace or datafile - open but tablespace or datafile offline
SVRMGRL> alter tablespace user_data offline temporary;
SVRMGRL> alter database datafile '/oracle/file/user_data1.dbf' offline;


마, Recovery

- Recoervy 는 file restore 후의 과정이다.

1) Archive log mode : complete recovery, incomplete recovery 가 가능하다
2) No archive log mode : consistent whole database backup 으로 부터
restore 하는 것이 유일한 option 이다.

- whole database recovery 의 예

svrmgrl
connect internal
shutdown abort
startup mount
-------------------------------------------------------------------
rman target \"system/manager\" rcvcat \"rman/rman@orabeta1\"

run {
allocate channel dev1 type disk;
allocate channel dev2 type disk;
restore database;
recover database;
release channel dev1;
release channel dev2;
}

or

run {
allocate channel dev1 type disk;
allocate channel dev2 type disk;
restore tablespace 'SYSTEM';
restore tablespace 'USERS';
recover tablespace 'SYSTEM';
recover tablespace 'USERS';
sql "alter database open ";
release channel dev1;
release channel dev2;
}

- datafile 하나가 사용할 수 없을 경우의 recovery
가정) full backup set 이 있을 경우

ORA-01157: cannot identify data file 3 - file not found
ORA-01110: data file 3: '/user7/ora8/oradata/ORA8/temp01.dbf'

SVRMGR> startup mount

rman target \"system/manager\" rcvcat \"rman/rman@orabeta1\"
RMAN> run {
allocate channel dev1 type disk;
restore database;
recover database;
release channel dev1;
};

laalaal~
반응형
Posted by [PineTree]
ORACLE/ADMIN2007. 7. 6. 01:46
반응형

Application 수행 중 자주 발생하는 Snapshot too old (ORA-01555) 에러에 대하여 많은 개발자 및 DBA들이

에러 발생의 원인에 대하여 빈번하게 문의를 하고 있어 간단하게 원인 및 대처 방안에 대하여 알아보고자 한다.

 

이 에러의 발생 원인은 SQL 수행 중 읽고자 하는 데이터가 다른 Transaction에 의해 변경이 되었고,

변경 전 데이터를 RBS에서 읽고자 했으나 찾지 못하는 경우에 발생하는 에러이다.

 

이러한 에러 발생의 주요 원인으로는 RBS (or Undo)가 너무 작기 때문에 Commit 된 Old Image가 RBS에서

삭제 (Re-write)되는 일이 발생할 수도 있으나, 대부분의 경우는 에러가 발생한 Application의 SQL이 너무

오래 돌기 때문에 (Long-running Query) 발생하는 경우가 대부분이다.

 

즉, SQL이 실행된 시점에는 읽고자 하는 데이터가 A 였으나 다른 Transaction에 의해 B로 Update되었고,

Commit이 실행 되었으므로 RBS에서 다른 Transaction에 의해 해당 RBS의 Extent가 재사용되는 경우에

A라는 Old-Image가 없어지게 되는 것이다.

 

해당 데이터를 읽고자 했던 프로세스가 오랜시간 이후에 해당 데이터를 RBS에서 읽고자 했으나,

이미 다른 Transaction에 의해 A라는 Image가 없어서 버린 이후 이므로 Snapshot too old 에러를 발생하게 되는 것이다.

 

일반적으로 운영 DB에서는 RBS 또는 UNDO Tablespace를 충분히 설정하는 경우가 대부분이며, 9i 이후 부터 적용된

UNDO_RETENTION도 충분히 크게 설정했다면 SQL의 수행시간이 너무 긴 것이 에러 발생의 주요 원인일 것이며,

RBS 또는 UNDO Size의 검토 와 SQL의 성능을 검토하는 것이 좋다.

 

SQL이 오래 수행되는 주요 원인은 아래와 같다.

 

1. 비효율적인 실행 계획 (Exection plan)

    - 의도하지 않은 Cartesian merge join

    - 비효율적인 조인 순서등으로 불필요한 블록 액세스가 발생하는 경우

    - 특정 테이블이 FULL SCAN으로 액세스되면서 Nested Loop 조인되는 경우

    - 비효율적인 인덱스를 사용하는 Nested Loop

    - Hash Join시 대용량 테이블이 Proning되는 경우 (Direct path read/write waiting, Disk I/O)

    - Non-mergeable view에 bind변수로 검색조건을 사용하거나 다른 테이블과의 조인에 사용하는 경우

2. 검색범위가 너무 넓은 경우

    - 처리해야 할 데이터 (READ 해야 할 데이터)의 범위가 너무 넓은 경우 (예: 3년치 SALES 데이터 SUMMARY)

    - 검색조건에 아무것도 넣지 않고 SEARCH 하는 경우

 

위의 경우 말고도 SQL의 성능이 저하되는 경우는 많이 있으므로 ORA-01555 에러가 발생할 경우

SQL의 응답속도에 문제가 없는지를 먼저 검토하는 것이 필요하다.

반응형

'ORACLE > ADMIN' 카테고리의 다른 글

10g SYSAUX tablespace 줄이기  (0) 2007.08.02
RMAN  (0) 2007.07.24
오라클9i 데이타베이스 초기화 매개변수(전부) 설명  (0) 2007.06.30
오라클 버젼 확인 명령어  (0) 2007.06.19
패스워드 제한 설정  (0) 2007.06.16
Posted by [PineTree]
ORACLE/ADMIN2007. 6. 30. 19:42
반응형

 

========================================
오라클9i 데이타베이스 초기화 매개변수(전부) 설명
========================================

크헐~ 간만에 노가다를...헐헐~ 이거 만드느라고 단순노동 좀 했슴다...
머...오라클 데이타베이스 생성하다보면 나오는 건데...이거 정리해논 문서가
없는거 같아서 그대로 옮겼슴다...머...보기에 별루 좋지는 않으니 다른 이름으로 저
장 하신담에 찾기 기능을 이용해서 참고하도록 하세요..한번 읽어보면 그냥 읽어 볼만
 함돠...헐헐~
 
아차차차차~~!!! 이거는 Oracle DataBase Release 2 (9.2.0.1) 버전꺼 임돠...

07_DICTIONARY_ACCESSIBILITY
설명    : Oracle7에서 Oracle8i로 이전할 때 주로 사용됩니다. TRUE로 설정된 경우 S
ELECT ANY TABLE과 같은 SYSTEM 권한은 SYS 스키마의 객체에 대한 액세스를 제한하지
않습니다. (Oracle7 기능) FALSE인 경우 사용자는 SELECT_CATALOG_ROLE, EXECUTE_CATA
LOG_ROLE 또는 DELETE_CATALOG_ROLE을 부여 받았을 때만 SYS 스키마 객체에 액세스할
수 있습니다.
사용 가능한 값: TRUE | FALSE
기본값  : TRUE

A
active_instance_count
설명    : 2개의 인스턴스로 이루어진 클러스터에서 사용자가 하나의 인스턴스를 기본 인스턴스로 지정하고 나머지 인스턴스를 보조 인스턴스로 지정할 수 있도록 합니다.
이 매개변수는 2개 이상의 인스턴스가 포함된 클러스터에서는 기능을 수행하지 않습니다.
사용 가능한 값: 1 또는 >= 클러스터의 인스턴스 수입니다.
기본값  : 없음

aq_tm_processes
설명    : 0보다 클 경우 대기열 메시지에 대한 시간 모니터링이 활성화됩니다. 시간은 응용 프로그램 개발에 사용되는 지연 및 만료 등록정보를 지정하는 메시지에 사용할 수 있습니다.
사용 가능한 값: 0 - 10
기본값  : 0

archive_lag_target
설명: 이 매개변수는 시간 기반의 스레드 고급 기능과 관련됩니다.
사용 가능한 값: 0 또는 [60, 7200]의 모든 정수입니다.
기본값: 기본값은 0으로 시간 기반의 스레드 고급 기능을 비활성화합니다. 그렇지 않
은 경우 값은 초 단위의 숫자로 표시됩니다.

audit_file_dest
설명    : 데이터베이스에 대한 모든 SYSDBA 또는 INTERNAL 접속이 이 디렉토리에 감
사 파일을 생성합니다. (UNIX의 경우에만)
사용 가능한 값: 유효한 임의 디렉토리 이름
기본값  : ORACLE_HOME/rdbms/audit

audit_trail
설명    : 데이터베이스 감사 기능을 활성화하거나 비활성화합니다. 감사 레코드는 매
개변수 값이 TRUE 또는 DB일 경우에는 SYS.AUD$ 테이블에 기록되고 매개변수 값이 OS
인 경우에는 운영 체제 파일에 기록됩니다.
사용 가능한 값: NONE | FALSE | DB | TRUE | OS
기본값  : NONE

 

B
background_core_dump
설명    : 생성된 코어 파일에 SGA 정보를 덤프할지 여부를 지정합니다. (UNIX의 경우
)
사용 가능한 값: FULL | PARTIAL
기본값  : FULL

background_dump_dest
설명    : Oracle 작업 중 백그라운드 프로세스(LGWR, DBW n 등)에 대한 추적 파일을
기록할 경로명(디렉토리 또는 디스크)을 지정합니다. 또한 중요한 이벤트 및 메시지를
 기록하는 데이터베이스 경보 파일의 위치를 정의합니다.
사용 가능한 값: 유효한 임의 디렉토리 이름입니다.
기본값  : ORACLE_HOME/rdbms/log (운영 체제에 따라 다름)

backup_tape_io_slaves
설명    : Recovery Manager 매개변수로 서버 프로세스 또는 추가 입출력 슬래이브를
사용하여 테이프를 읽거나 테이프에 기록할지 결정합니다.
사용 가능한 값: TRUE | FALSE
기본값  : FALSE

bitmap_merge_area_size
설명    : 인덱스의 범위 스캔을 통해 읽어들인 비트맵을 병합하는 데 사용되는 메모
리 크기를 지정합니다.
사용 가능한 값: 시스템에 따라 다릅니다.
기본값  : 1MB

blank_trimming
설명    : TRUE 값을 지정하면 원본 길이가 대상 길이보다 길더라도 데이터를 할당할
수 있습니다. (SQL92 호환)
사용 가능한 값: TRUE | FALSE
기본값  : FALSE

buffer_pool_keep
설명    : 객체를 메모리에 보존하여 입출력을 감소시키는데 목적이 있는 DB_BLOCK_BU
FFERS에서 할당된 유지 풀 크기입니다.
사용 가능한 값: 특정 문자열 값입니다. (예:. buffers:400, lru_latches:3)
기본값  : 없음

buffer_pool_recycle
설명    : 객체를 사용한 후 제거하여 메모리를 재사용하기 위해 DB_BLOCK_BUFFERS에
서 할당한 재생 풀 크기입니다.
사용 가능한 값: 특정 문자열 값입니다. (예: buffers:50, lru_latches:1)
기본값  : 없음


C
circuits
설명    : 수신 및 송신 네트워크 세션에 대해 사용 가능한 가상 회로의 총 수를 지정
합니다. 이 값은 인스턴스의 전체 SGA 요구 사항을 구성하는 몇몇 매개변수 중의 하나
입니다.
기본값  : 파생: 공유 서버 구조를 사용하는 경우 SESSIONS 매개변수 값. 그렇지 않은
 경우 0

cluster_database
설명: CLUSTER_DATABASE를 TRUE로 설정하여 Real Application 클러스터 옵션을 활성화
합니다.
사용 가능한 값: TRUE | FALSE
기본값: FALSE

cluster_database_instances
설명: 클러스터 데이터베이스의 일부로 현재 구성되어 있는 인스턴스의 수입니다. 이
값은 구성된 인스턴스 수에 따라 달라지는 SGA 구조의 크기를 결정할 때 사용됩니다.
이 매개변수를 제대로 설정하면 SGA의 메모리 사용이 개선됩니다. 여러 매개변수는 이
 값을 사용하여 계산됩니다.
사용 가능한 값: 0이 아닌 값입니다.
기본값: 1

cluster_interconnects
설명: Real Application 클러스터 환경에서 사용할 수 있는 추가 상호 접속입니다. 단
일 상호 접속이 클러스터 데이터베이스의 대역폭 요구 사항을 충분히 만족시키지 않을
 때 이 매개변수를 설정해야 합니다. 이 매개변수를 설정하지 않으면 Oracle은 Oracle
9i Real Application 클러스터 상호 노드 통신에 대한 해당 상호 접속을 확인하는 현
재 의미를 보존합니다.
사용 가능한 값: 콜론으로 구분된 하나 이상의 IP 주소입니다.
기본값: NONE

compatible
설명    : 이전 릴리스와의 역호환성을 보증하는 동시에 새 릴리스를 사용할 수 있습
니다.
사용 가능한 값: 현재 릴리스를 기본값으로 합니다.
기본값  : 릴리스에 따라 다름

commit_point_strength
설명    : 이 값은 분산 트랜잭션에서 커밋 위치 사이트를 결정합니다.
사용 가능한 값: 0-255 
기본값  : 운영 체제에 따라 다름

control_files
설명    : 하나 이상의 제어 파일 이름을 지정합니다. Oracle은 서로 다른 장치 또는
OS 파일 이중화에 대해 여러 개의 파일을 사용하도록 권장합니다.
사용 가능한 값: 1 - 8 파일 이름입니다. (경로명 포함)
기본값  : 운영 체제에 따라 다름

constrol_file_record_keep_time
설명    : 제어 파일의 재사용 가능 섹션에 있는 레코드를 유지해야 하는 최소 기간(
일 수)입니다.
사용 가능한 값: 0 - 365
기본값  : 7

core_dump_dest
설명    : 코어 덤프 위치를 지정하는 디렉토리 이름입니다. (UNIX의 경우)
사용 가능한 값: 유효한 임의 디렉토리 이름입니다.
기본값  : ORACLE_HOME/dbs

cpu_count
설명    : Oracle이 다른 매개변수 값을 계산하는 데 사용할 수 있는 CPU 수입니다.
이 값은 변경하지 마십시오.
사용 가능한 값: 0 - 무제한입니다.
기본값  : Oracle이 자동으로 설정함

create_bitmap_area_size
설명    : CREATE_BITMAP_AREA_SIZE가 비트맵 인덱스 작성에 할당된 메모리 크기를 지
정합니다.
사용 가능한 값: 운영 체제에 따라 다릅니다.
기본값  : 8 MB

cusor_space_for_time
설명    : 공유 SQL 영역을 커서가 참조하는 동안 공유 풀에 유지할지 또는 일정 시간
이 지난 후 삭제할지 결정합니다.
사용 가능한 값: TRUE | FALSE
기본값  : FALSE(일정 시간 후 삭제됨)

cursor_sharing
설명    : 최종적으로 동일한 공유 커서를 공유할 수 있는 SQL 문의 종류를 제어합니
다.
사용 가능한 값:
 FORCE: 일부 리터럴이 다르지만 명령문의 의미에는 영향을 주지 않고 나머지는 동
일한 경우 명령문이 커서를 공유하도록 합니다.
 EXACT: 동일한 SQL 문만 커서를 공유하도록 합니다.
기본값  : EXACT

 

D
db_2k_cache_size
설명: 2K 버퍼에 대한 캐시 크기를 지정합니다. db_block_size가 2K가 아닌 다른 값을
 가지는 경우에만 매개변수를 설정할 수 있습니다.
사용 가능한 값: 0M 또는 적어도 16M입니다. 플랫폼별 블록 크기 제한 사항이 적용됩
니다.
기본값: 0M

db_4k_cache_size
설명: 4K 버퍼에 대한 캐시 크기를 지정합니다. db_block_size가 4K가 아닌 다른 값을
 가지는 경우에만 매개변수를 설정할 수 있습니다.
사용 가능한 값: 0M 또는 적어도 16M입니다. 플랫폼별 블록 크기 제한 사항이 적용됩
니다.
기본값: 0M

db_8k_cache_size
설명: 8K 버퍼에 대한 캐시 크기를 지정합니다. db_block_size가 8K가 아닌 다른 값을
 가지는 경우에만 매개변수를 설정할 수 있습니다.
사용 가능한 값: 0M 또는 적어도 16M입니다. 플랫폼별 블록 크기 제한 사항이 적용됩
니다.
기본값: 0M

db_16k_cache_size
설명: 16K 버퍼에 대한 캐시 크기를 지정합니다. db_block_size가 16K가 아닌 다른 값
을 가지는 경우에만 매개변수를 설정할 수 있습니다.
사용 가능한 값: 0M 또는 적어도 16M입니다. 플랫폼별 블록 크기 제한 사항이 적용됩
니다.
기본값: 0M

db_32k_cache_size
설명: 32K 버퍼에 대한 캐시 크기를 지정합니다. db_block_size가 32K가 아닌 다른 값
을 가지는 경우에만 매개변수를 설정할 수 있습니다.
사용 가능한 값: 0M 또는 적어도 16M입니다. 플랫폼별 블록 크기 제한 사항이 적용됩
니다.
기본값: 0M

db_block_buffers
설명    : 버퍼 캐시의 Oracle 블록 수입니다. 이 매개변수 값은 인스턴스에 대한 전
체 SGA 크기에 중요한 영향을 줍니다.
사용 가능한 값: 4 - 운영 체제에 따라 다릅니다.
기본값  : 32768

db_block_checking
설명    : 트랜잭션 관리 블록의 손상 여부를 확인할지 제어할 때 사용됩니다.
사용 가능한 값: TRUE | FALSE
기본값  : FALSE

db_block_checksum
설명    : 읽거나 기록한 모든 데이터 블록에 대해 DBWn, ARCH, SQL*Loader가 블록 체
크섬을 계산 또는 확인할지 지정합니다.
사용 가능한 값: TRUE | FALSE
기본값  : FALSE

db_block_size
설명    : 오라클 데이터베이스 블록의 크기(바이트)입니다. 이 값은 데이터베이스 생
성 시 설정되며 이후에는 변경할 수 없습니다.
사용 가능한 값: 1024 - 65536입니다. (운영 체제에 따라 다름)
기본값  : 2048(운영 체제에 따라 다름)

db_cache_advice
설명: 다른 캐시 크기를 사용한 예상 작업에 대한 통계 수집을 활성화 및 비활성화합
니다. 정보는 V$DB_CACHE_ADVICE 뷰에 수집됩니다.
사용 가능한 값: OFF--권고가 해제되고 권고에 대한 메모리는 할당되지 않습니다. ON-
-권고가 설정됩니다. (예: CPU 및 메모리 오버헤드가 모두 초래됩니다.) READY--권고
가 해제되지만 권고에 대한 메모리는 할당된 상태로 유지됩니다.
기본값: OFF

db_cache_online_log_dest_1

db_cache_online_log_dest_2

db_cache_online_log_dest_3

db_cache_online_log_dest_4

db_cache_online_log_dest_5
설명: 온라인 로그 및 제어 파일 생성에 대한 기본 위치를 설정합니다. 기본값은 온라
인 로그 또는 제어 파일 생성 중에 파일 이름이 지정되지 않을 때마다 사용됩니다.
사용 가능한 값: 파일 시스템 디렉토리 이름입니다. 디렉토리가 존재해야 합니다. 디
렉토리는 Oracle이 해당 디렉토리에 파일을 생성할 수 있도록 하는 권한을 가져야 합
니다.

db_cache_size
설명: 표준 블록 크기 버퍼에 대한 캐시 크기를 지정합니다.
사용 가능한 값: 적어도 16M입니다.
기본값: 48M

db_create_file_dest
설명: 데이터 파일, 제어 파일 및 온라인 로그 생성에 대한 기본 위치를 설정합니다.
사용 가능한 값: 파일 시스템 디렉토리 이름입니다. 디렉토리가 존재해야 합니다. 디
렉토리는 Oracle이 해당 디렉토리에 파일을 생성할 수 있도록 하는 권한을 가져야 합
니다.

db_domain
설명    : 도메인에 고유한 데이터베이스 이름을 작성하기 위해 권장하는 데이터베이
스 이름의 확장자를 지정합니다. (예: US.ORACLE.COM)
사용 가능한 값: 마침표로 구분된 임의의 문자열로 최대 길이가 128자입니다.
기본값  : WORLD

db_files
설명    : 데이터베이스에 대해 열 수 있는 데이터베이스 파일의 최대 개수입니다.
사용 가능한 값: MAXDATAFILES - 운영 체제에 따라 다릅니다.
기본값  : 운영 체제에 따라 다름 (예: Solaris의 경우 200)

db_file_multiblock_read_count
설명    : 전체 순차 스캔 관련 입출력 작업을 하는 동안 읽어온 최대 블록 수입니다.
 
사용 가능한 값: 운영 체제에 따라 다릅니다.
기본값  : 8

db_file_name_convert
설명    : 기본 데이터베이스 상의 새 데이터 파일 이름을 대기 데이터베이스 상의 파
일 이름으로 변환합니다.
사용 가능한 값: 유효한 기본/대기 디렉토리 및 파일 이름 쌍입니다.
기본값  : 없음

db_keep_cache_size
설명: KEEP 버퍼 풀의 버퍼 수를 지정합니다. KEEP 버퍼 풀의 버퍼 크기는 기본 블록
크기(블록 크기는 db_block_size에 의해 정의됨)입니다.
사용 가능한 값: 0 또는 적어도 하나의 미립자 크기(더 작은 값은 미립자 크기로 자동
으로 반올림됨)입니다.
기본값: 0M

db_name
설명    : CREATE DATABASE 문에 지정된 이름과 동일한 데이터베이스 식별자입니다.
사용 가능한 값: 최대 8자의 유효한 임의의 이름입니다.
기본값  : 없음(지정해야 함)

db_recycle_cache_size
설명: RECYCLE 버퍼 풀의 크기를 지정합니다. RECYCLE 풀의 버퍼 크기는 기본 블록 크
기입니다.
사용 가능한 값: 0 또는 적어도 하나의 미립자 크기(더 작은 값은 미립자 크기로 자동
으로 반올림됨)입니다.
기본값: 0M

db_writer_processes
설명    : 인스턴스에 대한 데이터베이스 기록자 프로세스의 초기 개수입니다. DBWR_I
O_SLAVES를 사용하는 경우 하나의 데이터베이스 기록자만 사용됩니다.
사용 가능한 값: 1 - 10
기본값  : 1

dblink_encrypt_login
설명    : 다른 Oracle 서버에 접속 중일 때 데이터베이스 링크에 암호화된 암호를 사
용할지 지정합니다.
사용 가능한 값: TRUE | FALSE
기본값  : FALSE

dbwr_io_slaves
설명    : DBW0 프로세스가 사용하는 입출력 슬래이브의 수입니다. DBW0 프로세스와
해당 슬래이브는 항상 디스크에 기록합니다.
사용 가능한 값: 0 - 운영 체제에 따라 다릅니다.
기본값  : 0

dispatchers
설명    : 공유 서버를 사용하여 공유 환경을 설정하기 위한 작업 할당자의 수와 유형
을 설정합니다. 이 매개변수에는 여러 가지 옵션을 지정할 수 있습니다. 따라서 자세
한 내용은 Oracle8i 관리자 설명서와 Oracle Net Administrator's Guide를 참조하십시
오. 예제 문자열 값은 ''(PROTOCOL=TCP)(DISPATCHERS=3)''입니다.
사용 가능한 값: 유효한 매개변수 사양입니다.
기본값  : NULL

distributed_transactions
설명    : 데이터베이스가 한 번에 참여할 수 있는 분산 트랜잭션의 최대 개수입니다.
 네트워크 실패가 비정상적으로 많이 발생하여 많은 수의 미확정 트랜잭션이 생기는
경우 이 값을 줄입니다.
사용 가능한 값: 0 - TRANSACTIONS 매개변수 값입니다.
기본값  : 운영 체제에 따라 다름

disk_asynch_io
설명    : 데이터 파일, 제어 파일, 로그 파일에 대한 입출력이 비동기적인지, 즉 테
이블 스캔 시 프로세스가 입출력 및 CPU 요청과 겹치는지 제어합니다. 사용 중인 플랫
폼이 디스크에 대한 비동기 입출력을 지원할 경우에만 이 매개변수를 변경하십시오.
사용 가능한 값: TRUE | FALSE
기본값  : TRUE

dml_locks
설명    : 모든 사용자에 의해 획득된 테이블 잠금의 최대 개수입니다. DML(데이터 조
작어) 작업을 수행 중인 각 테이블에는 DML(데이터 조작어) 잠금이 필요합니다. 예를
들어, 3명의 사용자가 2개의 테이블을 수정하는 경우 6의 값이 필요합니다.
사용 가능한 값: 0 또는 20부터 무제한입니다.
기본값  : 4 * TRANSACTIONS (파생)

drs_start
Oracle이 DRMON 프로세스를 시작해야 하는지 여부를 결정하도록 합니다. DRMON은 치명
적이지 않은 Oracle 백그라운드 프로세스며 인스턴스가 존재하는 한 존재합니다.
사용 가능한 값: TRUE | FALSE입니다.
기본값: FALSE

 

E
enqueue_resources
설명    : 대기열에 넣으면 공유 리소스에 대해 동시 프로세스를 활성화할 수 있습니
다. 예를 들어, Oracle은 특정 프로세스가 공유 모드로 테이블을 잠그고 다른 프로세
스가 공유 갱신 모드로 해당 테이블을 잠그는 작업을 허용합니다.
사용 가능한 값: 10 - 65535(7.3) 또는 10 - 무제한(8.1)입니다.
기본값  : 파생됨(값이 DML_LOCKS + 20 이상일 경우 적당함)

event
설명    : 오라클 고객 지원 센터에서 시스템을 디버그하는 데 사용합니다. 일반적으
로 변경해서는 안됩니다. \n사용 가능한 값: 사용할 수 없습니다. \n기본값  : 없음


F
fal_client
설명: FAL 서비스(FAL_SERVER 매개변수를 통해 구성)에 의해 사용되는 FAL 클라이언트
 이름이 FAL 클라이언트를 나타내도록 지정합니다. 매개변수 값은 Oracle Net 서비스
이름입니다. 이 Oracle Net 서비스 이름은 FAL 서버 시스템에서 FAL 클라이언트(예:
이 대기 데이터베이스)를 가리키도록 제대로 구성된 것으로 간주됩니다.
사용 가능한 값: Oracle Net 서비스 이름의 문자열 값입니다.

fal_server
설명: 이 대기 데이터베이스에 대한 FAL 서버를 지정합니다. 값은 Oracle Net 서비스
이름입니다. Oracle Net 서비스 이름은 대기 데이터베이스 시스템에서 원하는 FAL 서
버를 가리키도록 제대로 구성된 것으로 간주됩니다.
사용 가능한 값: Oracle Net 서비스 이름의 문자열 값입니다.

fast_start_io_target
설명    : 충돌 또는 인스턴스 복구 중 필요한 입출력의 수를 지정합니다. DB_BLOCK_M
AX_DIRTY_TARGET 값을 사용할 때보다 복구 진행 시간에 대한 더욱 정밀한 제어를 가능
하게 합니다.
사용 가능한 값: 0은 입출력 복구 제한을 사용하지 않고 1000은 캐시의 모든 버퍼를
사용합니다.
기본값  : 캐시의 모든 버퍼

fast_start_mttr_target
설명: 데이터베이스 단일 인스턴스의 고장 복구를 위해 필요한 초 단위의 예측 시간을
 지정합니다. FAST_START_MTTR_TARGET은 해당 복구 시간이 전체 MTTR(평균 복구 시간)
 부분 내에 있도록 데이터베이스 작업을 수정하는 매개변수 집합으로 내부적으로 변환
됩니다. 매개변수는 "fast start fault recovery" 기능을 가지는 이러한 Edition으로
제한됩니다.
사용 가능한 값: [0, 3600]입니다. 이는 데이터 버터 캐시 항목 수 이상의 제한 및 최
대 크기의 로그에 있는 블록 수보다 큰 제한을 계산합니다.
기본값: 0

fast_start_parallel_rollback
설명    : 병렬 롤백 수행 시 최대 프로세스 수를 결정합니다. 대부분의 트랜잭션이
오랫동안 실행 중인 시스템에서 유용합니다.
사용 가능한 값: FALSE | LOW | HIGH
기본값  : LOW (2 * CPU_COUNT)

fixed_date
설명    : SYSDATE가 반환하는 날짜입니다. 시스템 날짜가 아닌 고정된 날짜를 항상
반환해야 할 경우 테스트하는 데 유용합니다. 큰 따옴표를 사용하거나 사용하지 않습
니다. 작은 따옴표는 사용하지 마십시오.
사용 가능한 값: YYYY-MM-DD-HH24:MI:SS 또는 기본 Oracle 날짜 형식입니다.
기본값  : NULL


G
gc_files_to_locks
설명    : 클러스터 데이터베이스 매개변수로 데이터 파일에 대한 PCM(병렬 캐시 관리
) 잠금 매핑을 제어합니다.
구문         : GC_FILES_TO_LOCKS = '{file_list=lock_count[!blocks][R][EACH][:...
]'
기본값  : NULL

global_context_pool_size
설명: 글로벌 응용 프로그램 컨텍스트 저장 및 관리를 위해 할당할 SGA의 메모리 양입
니다.
사용 가능한 값: 모든 정수 값입니다.
기본값: 1M

global_names
설명    : 데이터베이스 링크 이름이 접속하는 데이터베이스 이름과 동일해야 하는지
지정합니다. FALSE로 지정하면 확인을 수행하지 않습니다. 분산 처리의 일관성있는 이
름 지정 규칙을 위해 이 매개변수를 TRUE로 설정하십시오.
사용 가능한 값: TRUE | FALSE
기본값  : TRUE

 


H
hash_ared_size
설명    : 병렬 실행 작업 및 DML(데이터 조작어) 또는 DDL(데이터 정의어) 문에 관련
된 값으로 해시 조인에 사용될 메모리의 최대 크기를 바이트 단위로 지정합니다. 자세
한 내용은 Oracle8i 개념 설명서를 참조하십시오.
사용 가능한 값: 0 - 운영 체제에 따라 다른 값을 가집니다.
기본값  : 파생: 2 * SORT_AREA_SIZE 매개변수 값

hash_join_enabled
설명    : TRUE로 설정된 경우 최적기는 가장 효율적인 조인 방식을 계산할 때 해시
조인을 고려합니다. Oracle은 데이터 웨어하우징 응용 프로그램에 대해 TRUE 값을 사
용하도록 권장합니다.
사용 가능한 값: TRUE | FALSE
기본값  : TRUE

hi_shared_memory_address
설명    : 시스템 글로벌 영역(SGA)의 런타임 시 시작 주소를 지정합니다. SGA의 시작
 주소를 링크 시 지정하는 플랫폼에서는 무시됩니다. 64비트 플랫폼에서는 이 매개변
수를 사용하여 상위 및 하위 32비트를 지정합니다. 설정하지 않은 경우 기본적으로 플
랫폼에 따라 다른 위치로 지정됩니다.
사용 가능한 값: 임의 정수값입니다.
기본값  : 0

hs_autoregister
설명    : 이기종 서비스(HS) 에이전트의 자동 자체 등록을 활성화하거나 비활성화합
니다. 활성화된 경우 동일한 에이전트를 통해 이후에 접속할 때 적은 수의 오버헤드를
 유발하도록 정보를 데이터 딕셔너리로 업로드합니다.
사용 가능한 값: TRUE | FALSE
기본값  : TRUE

 

I
ifile
설명    : 현재 매개변수 파일에 다른 매개변수 파일을 내장시키기 위해 사용합니다.
이 매개변수는 최대 중첩 수준이 3단계를 초과하지 않는 범위 내에서 하나의 매개변수
 파일의 서로 다른 행에 여러 번 포함시킬 수 있습니다.
사용 가능한 값: 유효한 임의 매개변수 파일 이름입니다. (구문: IFILE = parameter_f
ile_name)
기본값  : NULL

instance_groups
설명    : 클러스터 데이터베이스 매개변수로 현재 인스턴스를 콤마로 구분된 목록을
사용하여 지정한 그룹에 할당합니다. 인스턴스 그룹은 병렬 작업에 대해 질의 슬래이
브를 할당할 때 사용됩니다. \n사용 가능한 값: 콤마로 구분된 그룹 이름의 문자열입
니다. \n기본값  : NULL

instance_name
설명    : 여러 인스턴스가 공통 서비스 이름을 공유할 때 각 데이터베이스 인스턴스
를 고유하게 식별합니다. INSTANCE_NAME과 실제로 호스트 상의 인스턴스 공유 메모리
를 고유하게 식별하는 SID를 혼동하시 마십시오.
사용 가능한 값: 임의 영숫자입니다.
기본값  : 데이터베이스 SID

instance_number
설명    : 클러스터 데이터베이스 매개변수로 저장 영역 매개변수 FREELIST GROUPS를
사용하여 생성된 데이터베이스 객체 소유의 사용 가능한 목록 그룹에 대한 인스턴스
매핑에 고유 번호를 지정합니다. ALTER TABLE ... ALLOCATE EXTENT 문의 INSTANCE 절
에 이 값을 사용하여 이 인스턴스에 확장 영역을 동적으로 할당합니다 \nn사용 가능한
 값: 1 - MAX_INSTANCES입니다. (데이터베이스 생성 시 지정됨) \n기본값  : 사용 가
능한 최하위 번호(인스턴스 시작 순서와 다른 인스턴스에 지정된 INSTANCE_NUMBER 값
에 따라 다름)


J
java_max_sessionspace_size
설명    : 서버에서 Java 프로그램 실행에 사용할 수 있는 메모리의 최대 크기를 바이
트 단위로 지정합니다. 특정 데이터베이스 호출에서 다른 데이터베이스 호출로 Java
상태를 저장합니다. 사용자의 세션 지속 시간 Java 상태가 이 값을 초과하면 이 세션
은 메모리 부족 오류로 종료됩니다.
사용 가능한 값: 운영 체제에 따라 다릅니다.
기본값  : 0

java_pool_size
설명    : Java 메소드와 클래스 정의 및 호출 끝에 Java 세션 공간으로 이전된 Java
객체의 공유 인메모리 표현을 저장하는 Java 풀 메모리의 크기를 바이트 단위로 지정
합니다. 자세한 내용은 Oracle8i Java Developer's Guide를 참조하십시오.
사용 가능한 값: 운영 체제에 따라 다릅니다.
기본값  : 운영 체제에 따라 다름

java_soft_sessionspace_limit
설명    : Java 세션에서 사용되는 Java 메모리에 '부분 제한'을 바이트 단위로 지정
합니다. 사용자의 세션 지속 시간 Java 상태가 너무 많은 메모리를 사용하는 경우 Ora
cle은 경고를 생성하고 추적 파일에 메시지를 기록합니다.
사용 가능한 값: 0 - 4GB
기본값  : 0

job_queue_processes
설명    : 복제된 환경에만 관련된 값으로 인스턴스 당 SNP 작업 대기열 프로세스의
수(SNP0, ... SNP9, SNPA, ... SNPZ)를 지정합니다. 테이블 스냅샷을 자동으로 갱신하
거나 DBMS_JOB에 의해 생성된 요청을 수행하려면 이 매개변수 값을 1 이상으로 설정하
십시오.
사용 가능한 값: 0 - 36
기본값  : 0

 

K

L
large_pool_size
설명    : 공유 서버가 세션 메모리, 메시지 버퍼의 병렬 실행 및 RMAN 백업, 디스크
입출력 버퍼 복구에 사용하는 대형 풀 할당 힙의 크기를 지정합니다.
사용 가능한 값: 600K(최소값)에서 >= 20000M(최대값은 운영 체제에 따라 다름)입니다
.
기본값  : 0(병렬 실행 또는 DBWR_IO_SLAVES를 구성하지 않은 경우)

license_max_users
설명    : 데이터베이스에 생성할 수 있는 최대 사용자 수를 지정합니다. 동시 세션
사용 라이센스와 사용자 라이센스를 모두 활성화하지 마십시오. LICENSE_MAX_SESSIONS
나 LICENSE_MAX_USERS 또는 둘 다 0이어야 합니다.
사용 가능한 값: 0에서 사용자 라이센스 수까지입니다.
기본값  : 0

license_max_sessions
설명    : 동시에 허용하는 동시 사용자 세션의 최대 수를 지정합니다. 이 제한 값에
도달하면 RESTRICTED SESSION 권한을 가진 사용자만 서버에 접속할 수 있습니다. 다른
 모든 사용자는 시스템이 최대 용량에 도달했다는 경고 메시지를 받게 됩니다.
사용 가능한 값: 0에서 세션 라이센스 수까지입니다.
기본값  : 0

license_sessions_warning
설명    : 동시 사용자 세션 수의 경고 제한을 지정합니다. 이 제한 값에 도달해도 추
가 사용자가 접속할 수 있지만 ALERT 파일에 메시지가 기록됩니다. RESTRICTED SESSIO
N 권한을 가진 사용자가 접속할 때 시스템이 최대 용량에 근접하고 있다는 경고 메시
지가 표시됩니다.
사용 가능한 값: 0 - LICENSE_MAX_SESSIONS
기본값  : 0

local_listener
설명    : 동일한 시스템의 데이터베이스 인스턴스를 Oracle Net 리스너로 식별하는 O
racle Net 주소 목록입니다. 각 인스턴스와 작업 할당자는 클라이언트 접속을 활성화
하기 위해 리스너에 등록합니다. 이 매개변수는 현재 버전 8.1에서는 사용되지 않는 M
TS_LISTENER_ADDRESS와 MTS_MULTIPLE_LISTENERS 매개변수보다 우선 적용됩니다.
사용 가능한 값: 유효한 Oracle Net 주소 목록입니다.
기본값  : (ADDRESS_LIST=(Address=(Protocol=TCP)(Host=localhost)(Port=1521)) (Add
ress=(Protocol=IPC)(Key=DBname)))

lock_date
설명    : 전체 SGA를 물리적 메모리로 잠글 때 사용됩니다. 이 기능을 지원하지 않는
 플랫폼에서는 무시됩니다.
사용 가능한 값: TRUE | FALSE
기본값  : FALSE

lock_name_space
설명    : 분산 잠금 관리자(DLM)가 잠금 이름을 생성하기 위해 사용하는 네임스페이
스를 지정합니다. 동일한 클러스터에 동일한 데이터베이스 이름을 가진 대기 또는 복
제 데이터베이스가 있을 경우 이 값을 설정해야 합니다.
사용 가능한 값: 최대 8자로 특수 문자를 수락하지 않습니다.
기본값  : NULL

log_archive_dest
설명    : 데이터베이스가 ARCHIVELOG 모드로 실행 중이거나 아카이브된 리두 로그에
서 데이터베이스를 복구하는 중에만 적용 가능합니다. 8.1 Enterprise Edition에서는
LOG_ARCHIVE_DEST_n을 대신 사용해야 합니다.
사용 가능한 값: NULL 문자열 또는 원시 분할 영역을 제외한 유효한 임의 경로 및 장
치 이름입니다.
기본값  : NULL

log_archive_dest_1
설명    : 아카이브된 리두 로그 파일을 복제할 수 있는 5개의 로컬(LOCATION으로 지
정) 또는 원격(SERVICE로 지정) 대상 중 첫번째 대상입니다. 이 매개변수는 Enterpris
e Edition Oracle8i 데이터베이스 이상에 대해서만 유효합니다.
사용 가능한 값: 구문: (null_string | SERVICE=tnsnames-service |LOCATION=director
y-spec)[MANDATORY | OPTIONAL][REOPEN=integer]
기본값  : NULL

log_archive_dest_2
설명    : 아카이브된 리두 로그 파일을 복제할 수 있는 5개의 로컬(LOCATION으로 지
정) 또는 원격(SERVICE로 지정) 대상 중 두번째 대상입니다. 이 매개변수는 Enterpris
e Edition Oracle8i 데이터베이스 이상에 대해서만 유효합니다.
사용 가능한 값: 구문: (null_string | SERVICE=tnsnames-service |LOCATION=director
y-spec)[MANDATORY | OPTIONAL][REOPEN=integer]
기본값  : NULL

log_archive_dest_3
설명    : 아카이브된 리두 로그 파일을 복제할 수 있는 5개의 로컬(LOCATION으로 지
정) 또는 원격(SERVICE로 지정) 대상 중 세번째 대상입니다. 이 매개변수는 Enterpris
e Edition Oracle8i 데이터베이스 이상에 대해서만 유효합니다.
사용 가능한 값: 구문: (null_string | SERVICE=tnsnames-service |LOCATION=director
y-spec)[MANDATORY | OPTIONAL][REOPEN=integer]
기본값  : NULL

log_archive_dest_4
설명    : 아카이브된 리두 로그 파일을 복제할 수 있는 5개의 로컬(LOCATION으로 지
정) 또는 원격(SERVICE로 지정) 대상 중 네번째 대상입니다. 이 매개변수는 Enterpris
e Edition Oracle8i 데이터베이스 이상에 대해서만 유효합니다.
사용 가능한 값: 구문: (null_string | SERVICE=tnsnames-service |LOCATION=director
y-spec)[MANDATORY | OPTIONAL][REOPEN=integer]
기본값  : NULL

log_archive_dest_5
설명    : 아카이브된 리두 로그 파일을 복제할 수 있는 5개의 로컬(LOCATION으로 지
정) 또는 원격(SERVICE로 지정) 대상 중 다섯번째 대상입니다. 이 매개변수는 Enterpr
ise Edition Oracle8i 데이터베이스 이상에 대해서만 유효합니다.
사용 가능한 값: 구문: (null_string | SERVICE=tnsnames-service |LOCATION=director
y-spec)[MANDATORY | OPTIONAL][REOPEN=integer]
기본값  : NULL

log_archive_dest_6

log_archive_dest_7

log_archive_dest_8

log_archive_dest_9

log_archive_dest_10

log_archive_dest_state_1
설명    : 해당 아카이브된 로그 대상 매개변수의 가용성 상태를 지정합니다. (LOG_AR
CHIVE_DEST_1에만 적용됨) 활성화된 경우 로그 대상을 아카이브하고 지연된 경우에는
다시 활성화할 때까지 해당 대상을 아카이브 작업에서 제외합니다.
사용 가능한 값: ENABLE | DEFER
기본값  : ENABLE

log_archive_dest_state_2
설명    : 해당 아카이브된 로그 대상 매개변수의 가용성 상태를 지정합니다. (LOG_AR
CHIVE_DEST_2에만 적용됨) 활성화된 경우 로그 대상을 아카이브하고 지연된 경우에는
다시 활성화할 때까지 해당 대상을 아카이브 작업에서 제외합니다.
사용 가능한 값: ENABLE | DEFER
기본값  : ENABLE

log_archive_dest_state_3
설명    : 해당 아카이브된 로그 대상 매개변수의 가용성 상태를 지정합니다. (LOG_AR
CHIVE_DEST_3에만 적용됨) 활성화된 경우 로그 대상을 아카이브하고 지연된 경우에는
다시 활성화할 때까지 해당 대상을 아카이브 작업에서 제외합니다.
사용 가능한 값: ENABLE | DEFER
기본값  : ENABLE

log_archive_dest_state_4
설명    : 해당 아카이브된 로그 대상 매개변수의 가용성 상태를 지정합니다. (LOG_AR
CHIVE_DEST_4에만 적용됨) 활성화된 경우 로그 대상을 아카이브하고 지연된 경우에는
다시 활성화할 때까지 해당 대상을 아카이브 작업에서 제외합니다.
사용 가능한 값: ENABLE | DEFER
기본값  : ENABLE

log_archive_dest_state_5
설명    : 해당 아카이브된 로그 대상 매개변수의 가용성 상태를 지정합니다. (LOG_AR
CHIVE_DEST_5에만 적용됨) 활성화된 경우 로그 대상을 아카이브하고 지연된 경우에는
다시 활성화할 때까지 해당 대상을 아카이브 작업에서 제외합니다.
사용 가능한 값: ENABLE | DEFER
기본값  : ENABLE

log_archive_dest_state_6
설명: 특정 로그 아카이브 대상의 마지막 사용자 정의 상태를 식별합니다.
사용 가능한 값: ENABLE--대상 속성이 유효한 경우 archivelog 대상을 활성화합니다.
DEFER--대상 속성이 유효한 경우에도 archivelog 대상의 프로세스를 지연시킵니다. AL
TERNATE--대체 대상 속성이 유효한 경우 다른 대상 실패가 이 대상을 자동으로 활성화
하는 시간까지 archivelog 대상의 프로세스를 지연시킵니다.

log_archive_dest_state_7
설명: 특정 로그 아카이브 대상의 마지막 사용자 정의 상태를 식별합니다.
사용 가능한 값: ENABLE--대상 속성이 유효한 경우 archivelog 대상을 활성화합니다.
DEFER--대상 속성이 유효한 경우에도 archivelog 대상의 프로세스를 지연시킵니다. AL
TERNATE--대체 대상 속성이 유효한 경우 다른 대상 실패가 이 대상을 자동으로 활성화
하는 시간까지 archivelog 대상의 프로세스를 지연시킵니다.

log_archive_dest_state_8
설명: 특정 로그 아카이브 대상의 마지막 사용자 정의 상태를 식별합니다.
사용 가능한 값: ENABLE--대상 속성이 유효한 경우 archivelog 대상을 활성화합니다.
DEFER--대상 속성이 유효한 경우에도 archivelog 대상의 프로세스를 지연시킵니다. AL
TERNATE--대체 대상 속성이 유효한 경우 다른 대상 실패가 이 대상을 자동으로 활성화
하는 시간까지 archivelog 대상의 프로세스를 지연시킵니다.

log_archive_dest_state_9
설명: 특정 로그 아카이브 대상의 마지막 사용자 정의 상태를 식별합니다.
사용 가능한 값: ENABLE--대상 속성이 유효한 경우 archivelog 대상을 활성화합니다.
DEFER--대상 속성이 유효한 경우에도 archivelog 대상의 프로세스를 지연시킵니다. AL
TERNATE--대체 대상 속성이 유효한 경우 다른 대상 실패가 이 대상을 자동으로 활성화
하는 시간까지 archivelog 대상의 프로세스를 지연시킵니다.

log_archive_dest_state_10
설명: 아카이브 로그 대상을 지정합니다.
사용 가능한 값: 로컬 파일 시스템 위치(디스크 위치) 또는 Oracle Net 서비스 이름(t
ns 서비스)을 통한 원격 아카이브입니다.

log_archive_duplex_dest
설명    : LOG_ARCHIVE_DEST가 아닌 두번째 아카이브 대상을 지정합니다. 이 매개변수
는 Oracle8i Enterprise Edition에서 LOG_ARCHIVE_DEST_n으로 바뀌었습니다.
사용 가능한 값: NULL 문자열 또는 원시 분할 영역을 제외한 유효한 경로 및 장치 이
름입니다.
기본값  : NULL

log_archive_format
설명    : LOG_ARCHIVE_FORMAT은 데이터베이스가 ARCHIVELOG 모드일 때만 사용할 수 있습니다. 변수 %s(로그 시퀀스 번호) 및 %t(스레드 번호)이(가) 포함된 텍스트 문자
열을 사용하여 아카이브된 리두 로그 파일의 고유한 파일 이름을 지정합니다. 이 문자
열은 LOG_ARCHIVE_DEST 매개변수에 추가됩니다.
사용 가능한 값: 유효한 임의 파일 이름입니다.
기본값  : 운영 체제에 따라 다름

log_archive_max_processes
설명    : 필요한 ARCH 프로세스의 수를 지정합니다. 이 값이 LOG_ARCHIVE_START = TRUE로 설정된 경우 인스턴스 시작 시 평가되거나 SQL*Plus 또는 SQL 구문을 통해 ARCH 프로세스를 호출할 때 평가됩니다.
사용 가능한 값: 1과 10 사이의 임의 정수입니다.
기본값  : 1

log_archive_min_succeed_dest
설명    : 로그 파일을 겹쳐쓰기 전에 복사해야 하는 최소 대상 수를 정의합니다. 이
값은 LOG_ARCHIVE_DEST_n의 MANDATORY 대상 수보다 크거나 같아야 합니다.
사용 가능한 값: 1 - 5입니다. (LOG_ARCHIVE_DEST 및 LOG_ARCHIVE_DUPLEX_DEST와 함께 사용될 경우에는 1 - 2로 제한됨)
기본값  : 1

log_archive_start
설명    : 데이터베이스가 ARCHIVELOG 모드일 때만 적용 가능한 값으로 리두 로그를
자동 또는 수동으로 복사할지 여부를 지정합니다. 권장값은 자동 아카이브를 수행하는
 TRUE입니다. 이 값을 사용하지 않으면 인스턴스 대기를 방지하기 위해 ALTER SYSTEM
ARCHIVE LOG ... 명령을 사용한 수동 개입이 필요합니다.
사용 가능한 값: TRUE | FALSE
기본값  : FALSE

log_archive_trace
설명    : 아카이브 로그 프로세스에 의해 생성되는 출력을 제어합니다. 이 프로세스
는 ARCn 백그라운드 프로세스(출력 로그에 ARCn으로 지정됨)에 의해 시작될 수 있습니
다.
 명시적인 세션 호출 포그라운드 프로세스(출력 로그에 ARCH로 지정됨) 또는
 관리 대기의 원격 파일 서버(RFS) 프로세스. 
사용 가능한 값: 
 0: 아카이브 로그 추적 사용 중지(기본값)
 1: 리두 로그 파일 아카이브 추적
 2: 각 아카이브 로그 대상의 아카이브 상태 추적
 4: 아카이브 작업 단계 추적
 8: 아카이브 로그 대상 작업 추적
 16: 세부 아카이브 로그 대상 작업 추적
 32: 아카이브 로그 대상 매개변수 수정 추적
 64: ARCn 프로세스 상태 작업 추적
기본값  : 0

log_buffer
설명    : 리두 항목을 LGWR에 의해 리두 로그 파일에 기록하기 전에 버퍼로 저장하기
 위해 사용되는 메모리 크기를 지정합니다. 리두 항목은 데이터베이스 블록의 변경 사
항 기록을 보존합니다. 특히 실행 시간이 길거나 많은 수의 트랜잭션이 실행 중인 시
스템에서 이 값을 65536 이상으로 설정하면 리두 로그 파일 입출력을 줄일 수 있습니
다.
사용 가능한 값: 운영 체제에 따라 다릅니다.
기본값  : 최대 500K 또는 128K * CPU_COUNT, 이 중 크기가 더 큰 값

log_checkpoint_interval
설명    : 체크포인트가 발생하기 전에 리두 로그 파일에 써야 할 OS 블록(데이터베이
스 블록이 아님)의 수를 지정합니다. 체크포인트는 이 값에 상관없이 항상 로그 전환
시에 발생합니다. 이 값의 크기를 줄이면 인스턴스 복구에 필요한 시간이 감소하지만
과도한 디스크 작업이 유발될 수 있습니다.
사용 가능한 값: 무제한입니다. (0을 지정하면 이 매개변수 기능을 해제함)
기본값  : 운영 체제에 따라 다름

log_checkpoint_timeout
설명    : 다른 체크포인트가 발생할 때까지의 최대 시간을 초 단위로 지정합니다. 이
 시간 초과 값을 0으로 설정하면 시간에 준한 체크포인트 기능을 해제합니다. 이 값의
 크기를 줄이면 인스턴스 복구 시간이 감소하지만 과도한 디스크 작업이 유발될 수 있
습니다.
사용 가능한 값: 0 - 무제한입니다.
기본값  : Oracle8i: 900초, Enterprise Edition: 1800초

log_checkpoints_to_alert
설명    : 체크포인트 정보를 경보 파일에 기록합니다. 이 매개변수를 사용하면 체크
포인트가 원하는 빈도로 발생하는지 결정할 수 있습니다.
사용 가능한 값: TRUE | FALSE
기본값  : FALSE

log_file_name_convert
설명    : 기본 데이터베이스 상의 로그 파일 이름을 대기 데이터베이스 상의 해당 경
로 및 파일 이름으로 변환합니다. 로그 파일을 기본 데이터베이스에 추가할 때 해당
파일을 대기 데이터베이스에도 추가해야 합니다. 이 매개변수는 Oracle7의 LOG_FILE_N
AME_CONVERT 매개변수를 대신합니다.
사용 가능한 값: 유효한 경로/파일 이름, 형식: ''기본 로그 파일의 경로/파일 이름''
,''대기 로그 파일의 경로/파일 이름''
기본값  : NULL

logmnr_max_persistent_sessions


M
max_commit_propagation_delay
설명    : 클러스터 데이터베이스 매개변수로 LGWR이 인스턴스의 SGA에 저장된 SCN(시
스템 변경 번호)을 새로 고칠 때까지 허용된 최대 시간의 길이를 100분의 1초 단위로
지정합니다. SCN은 정기적으로 갱신되지는 않으므로 이 성능 매개변수는 거의 변경할
필요가 없습니다. \n사용 가능한 값: 0 - 90000 \n기본값  : 700

max_dispatchers
설명    : 공유 서버 환경에서 동시에 실행될 수 있는 작업 할당자 프로세스의 최대
수를 지정합니다.
사용 가능한 값: 운영 체제에 따라 다릅니다.
기본값  : 작업 할당자가 구성된 경우 5와 구성된 작업 할당자 수 가운데 큰 값이 기
본값이 됩니다.

max_dump_file_size
설명    : 각 추적 파일의 최대 크기를 지정합니다. 추적 파일이 너무 많은 공간을 차
지하는 경우 이 제한을 변경할 수 있습니다. 덤프 파일 크기를 운영 체제가 허용하는
크기로만 제한하려면 UNLIMITED로 설정합니다.
사용 가능한 값: 0 - UNLIMITED('K' 또는 'M' 단위 사용 가능)
기본값  : 10000블록

max_enabled_roles
설명    : 하위 롤을 포함하여 사용자가 사용할 수 있는 데이터베이스 롤의 최대 수를
 지정합니다. 각 사용자는 PUBLIC과 사용자 고유 롤에 해당하는 2개의 추가 롤을 가지
고 있으므로 실제로 사용자가 활성화할 수 있는 롤의 수는 MAX_ENABLED_ROLES 값에 2
를 더한 값에 해당합니다.
사용 가능한 값: 0 - 148
기본값  : 20

max_rollback_segments
설명    : SGA에서 롤백 세그먼트 캐시의 최대 크기를 지정합니다. 지정된 숫자는 하
나의 인스턴스가 동시에 온라인 상태(즉, INUSE 상태)를 유지할 수 있는 롤백 세그먼
트의 최대 수를 나타냅니다.
사용 가능한 값: 2 - 65535
기본값  : max(30, TRANSACTIONS/TRANSACTIONS_PER_ROLLBACK_SEGMENT)

max_shared_servers
설명    : 공유 서버 환경에서 동시에 실행될 수 있는 공유 서버 프로세스의 최대 수
를 지정합니다.
사용 가능한 값: 운영 체제에 따라 다릅니다.
기본값  : 20

max_transaction_branches
설명    : 분산 트랜잭션의 분기 수를 제어합니다. MAX_TRANSACTION_BRANCHES 값을 작
은 값으로 설정하면 (MAX_TRANSACTION_BRANCHES * DISTRIBUTED_TRANSACTIONS * 72바이
트) 값에 따라 공유 풀 메모리를 약간 줄일 수 있습니다. 이 매개변수는 현재 버전 8.
1.3에서는 사용되지 않습니다.
사용 가능한 값: 1 - 32
기본값  : 8

mts_circuits
설명    : 수신 및 송신 네트워크 세션에 대해 사용 가능한 가상 회로의 총 수를 지정
합니다. 이 값은 인스턴스의 전체 SGA 요구 사항을 구성하는 몇몇 매개변수 중의 하나
입니다.
기본값  : 파생: 공유 서버 구조를 사용하는 경우 SESSIONS 매개변수 값. 그렇지 않은
 경우 0

mts_dispatchers
설명    : 공유 서버를 사용하여 공유 환경을 설정하기 위한 작업 할당자의 수와 유형
을 설정합니다. 이 매개변수에는 여러 가지 옵션을 지정할 수 있습니다. 따라서 자세
한 내용은 Oracle8i 관리자 설명서와 Oracle Net Administrator's Guide를 참조하십시
오. 예제 문자열 값은 ''(PROTOCOL=TCP)(DISPATCHERS=3)''입니다.
사용 가능한 값: 유효한 매개변수 사양입니다.
기본값  : NULL

mts_listener_address
설명    : 공유 서버에 대한 리스너 구성을 지정합니다. 리스너 프로세스는 시스템에
서 사용되는 각 네트워크 프로토콜에 대한 접속 요청의 수신 주소가 필요합니다. MTS_
MULTIPLE_LISTENERS=TRUE로 설정된 경우가 아니면 각 항목은 별도의 인접 값을 가져야
 합니다. 이 매개변수는 현재 버전 8.1.3에서는 사용되지 않습니다.
구문         : (ADDRESS=(PROTOCOL=tcp)(HOST=myhost)(PORT=7002))
기본값  : NULL

mts_max_dispatchers
설명    : 공유 서버 환경에서 동시에 실행될 수 있는 작업 할당자 프로세스의 최대
수를 지정합니다.
사용 가능한 값: 운영 체제에 따라 다릅니다.
기본값  : 작업 할당자가 구성된 경우 5와 구성된 작업 할당자 수 가운데 큰 값이 기
본값이 됩니다.

mts_max_servers
설명    : 공유 서버 환경에서 동시에 실행될 수 있는 공유 서버 프로세스의 최대 수
를 지정합니다.
사용 가능한 값: 운영 체제에 따라 다릅니다.
기본값  : 20

mts_multiple_listners
설명    : 다중 리스너 주소를 개별 항목 또는 하나의 ADDRESS_LIST 문자열로 지정할
지 결정합니다. TRUE로 설정된 경우 MTS_LISTENER_ADDRESS 매개변수는 다음과 같이 지
정할 수 있습니다.
   (ADDRESS_LIST=(ADDRESS=(PROTOCOL=tcp)(PORT=5000)(HOST=zeus))
                 (ADDRESS=(PROTOCOL=decnet)(OBJECT=outa)(NODE=zeus))
이 매개변수는 현재 버전 8.1.3에서는 사용되지 않습니다.
사용 가능한 값: TRUE | FALSE
기본값  : FALSE

mts_service
설명    : 공유 서버 매개변수로 데이터베이스 접속을 구현하기 위해 작업 할당자에
등록된 고유한 서비스 이름을 지정합니다. 작업 할당자를 사용할 수 없을 경우에도 데
이터베이스에 접속하려면 이 값을 인스턴스 이름과 동일하게 설정합니다. 이 매개변수
는 현재 버전 8.1.3에서는 사용되지 않습니다.
사용 가능한 값: 운영 체제에 따라 다릅니다.
기본값  : 0

mts_servers
설명    : 공유 서버 환경에서 인스턴스가 시작될 때 생성할 서버 프로세스의 수를 지
정합니다.
사용 가능한 값: 운영 체제에 따라 다릅니다.
기본값  : 1

mts_sessions
설명    : 허용할 공유 서버 구조 사용자 세션의 총 수를 지정합니다. 이 매개변수를
설정하면 전용 서버의 사용자 세션을 예약할 수 있습니다.
사용 가능한 값: 0부터 (SESSIONS - 5)까지 
기본값  : 파생: MTS_CIRCUITS 값과 (SESSIONS - 5) 값 중 작은 값

 


N
nls_calendar
설명    : Oracle이 날짜 형식에 사용할 달력 시스템을 지정합니다. 예를 들어, NLS_C
ALENDAR를 'Japanese Imperial'로 설정하면 날짜 형식은 'E YY-MM-DD'이며 날짜가 1997년 5월 15일인 경우 SYSDATE는 'H 09-05-15'와 같이 표시됩니다.
사용 가능한 값: Arabic Hijrah, English Hijrah, Gregorian, Japanese Imperial, Per
sian, ROC Official (Republic of China), Thai Buddha입니다.
기본값  : Gregorian

nls_comp
설명    : SQL 문에 NLS_SORT를 사용하는 번거로운 프로세스를 피합니다. 일반적으로
WHERE 절의 비교는 이진 값을 대상으로 하지만 문자 비교의 경우에는 NLSSORT 함수가
필요합니다. NLS_COMP를 사용하면 비교가 NLS_SORT 세션 매개변수에 따른 문자 비교임을 나타낼 수 있습니다.
사용 가능한 값: Oracle8i National Language Support Guide에 지정된 10바이트 길이
의 문자열입니다.
기본값  : BINARY 

nls_currency
설명    : L 숫자 형식 요소에 대해 지역 통화 기호로 사용할 문자열을 지정합니다.
이 매개변수의 기본값은 NLS_TERRITORY에 의해 결정됩니다.
사용 가능한 값: Oracle8i National Language Support Guide에 지정된 10바이트 길이
의 문자열입니다.
기본값  : NLS_TERRITORY에서 파생된 값

nls_date_format
설명    : TO_CHAR 및 TO_DATE 함수에 사용할 기본 날짜 형식을 지정합니다. 이 매개
변수의 기본값은 NLS_TERRITORY에 의해 결정됩니다. 이 매개변수는 큰 따옴표로 표시
한 임의의 유효한 날짜 형식 마스크를 값으로 가질 수 있습니다. 예: ''MMM/DD/YYYY''
사용 가능한 값: 일정한 길이를 넘지 않는 임의의 유효한 날짜 형식 마스크입니다.
기본값  : 파생

nls_date_language
설명    : 요일과 달 이름 및 날짜 약자(AM, PM, AD, BC)를 표기할 언어를 지정합니다
. 이 매개변수의 기본값은 NLS_LANGUAGE에 의해 지정된 언어입니다.
사용 가능한 값: 임의의 유효한 NLS_LANGUAGE 값입니다.
기본값  : NLS_LANGUAGE 값

nls_dual_currency
설명    : NLS_TERRITORY에 정의된 기본 이중 통화 기호를 무시할 때 사용됩니다. 기
본 이중 통화 기호는 이 매개변수가 설정되지 않았을 때 사용됩니다. 그렇지 않으면
이 값을 이중 통화 기호로 하는 새 세션이 시작됩니다.
사용 가능한 값: 임의의 유효한 형식 이름입니다.
기본값  : 이중 통화 기호

nls_iso_currency
설명    : C 숫자 형식 요소에 대해 국제 통화 기호로 사용할 문자열을 지정합니다.
이 매개변수의 기본값은 NLS_TERRITORY에 의해 결정됩니다.
사용 가능한 값: 임의의 유효한 NLS_TERRITORY 값입니다.
기본값  : NLS_TERRITORY에서 파생된 값

nls_languge
설명    : 메시지, 요일 및 달 이름, AD, BC, AM, PM과 같은 기호, 기본 정렬 방법에
사용되는 데이터베이스 기본 언어를 지정합니다. 지원되는 언어에는 영어, 프랑스어,
일본어 등이 있습니다.
사용 가능한 값: 임의의 유효한 언어 이름입니다.
기본값  : 운영 체제에 따라 다름

nls_length_semantics
설명: 바이트 또는 코드포인트 의미를 사용하여 새로운 char, varchar2, clob, nchar,
 nvarchar2, nclob 열 생성을 지정합니다. 모든 문자 집합은 자신의 고유한 문자 정의
를 가집니다. 동일한 문자 집합이 클라이언트 및 서버에서 사용될 경우 문자열은 해당
 문자 집합에 의해 정의된 대로 문자 단위로 측정되어야 합니다. 기존의 열은 영향을
받지 않습니다.
사용 가능한 값: BYTE 또는 CHAR입니다.
기본값: nls_length_semantics에 대한 데이터베이스 문자 집합의 문자를 측정하는 항
목에 대해서는 BYTE입니다.

nls_nchar_conv_excp
설명: (TRUE인 경우) 데이터 손실이 암시적 변환에서 발생할 때 오류를 반환하는 매개
변수입니다.
사용 가능한 값: FALSE | TRUE
기본값: TRUE

nls_numeric_characters
설명    : 그룹 구분 기호와 소수점으로 사용할 문자를 지정합니다. 그룹 구분 기호는
 정수 그룹(예: 천, 백만 등)을 구분하는 문자이고 소수점은 숫자의 정수 부분과 소수
 부분을 구분하는 문자입니다. 형식: <decimal_character><group_separator>.
사용 가능한 값: '+', '-', '<', '>'을 제외한 임의의 단일 바이트 문자 
기본값  : NLS_TERRITORY에서 파생된 값

nls_sort
설명    : ORDER BY 질의에 대한 조합 순서를 지정합니다. 이진 정렬의 경우 ORDER BY
 질의에 대한 조합 순서는 숫자 값을 기준으로 합니다. 문자 정렬의 경우 정의된 문자
 정렬 순서로 데이터를 배열하려면 전체 테이블을 스캔해야 합니다.
사용 가능한 값: BINARY 또는 유효한 문자 정의 이름입니다.
기본값  : NLS_LANGUAGE에서 파생된 값

nls_territory
설명    : 날짜와 주 번호 매김, 기본 날짜 형식, 기본 소수점 문자, 그룹 구분 기호,
 기본 ISO 및 지역 통화 기호에 대한 이름 지정 규칙을 지정합니다. 지원되는 지역에
는 미국, 프랑스, 일본 등이 있습니다. 모든 지역에 대한 내용은 Oracle8i National L
anguage Support Guide를 참조하십시오.
사용 가능한 값: 임의의 유효한 지역 이름입니다.
기본값  : 운영 체제에 따라 다름

nls_time_format
설명    : 날짜 시간 필드인 HOUR, MINUTE, SECOND가 포함된 TIME 데이터 유형의 기본
값을 설정하는 문자열 값을 지정합니다.
구문         : TIME '09:26:50'. (값을 7바이트로 저장함)
기본값  : NLS_TERRITORY에서 파생된 값

nls_time_tz_format
설명    : 날짜 시간 필드인 HOUR, MINUTE, SECOND, TIMEZONE_HOUR, TIMEZONE_MINUTE
가 포함된 TIME WITH TIME ZONE 데이터 유형의 기본값을 설정하는 UTC와 TZD 값 쌍을
지정합니다. UTC는 국제 표준 시간이고 TZD는 지역 시간대입니다.
구문         : TIME '09:26:50.20+ 02:00'. (값을 9바이트로 저장함)
기본값  : NLS_TERRITORY에서 파생된 값

nls_timestamp_format
설명    : NLS_TIME_FORMAT와 유사하지만 시간의 HOUR, MINUTE, SECOND 값을 비롯한
날짜의 YEAR, MONTH, DAY 값을 저장하는 TIMESTAMP 데이터 유형의 기본값을 설정합니
다.
구문         : TIMESTAMP '1997-01-31 09:26:50.10'. (값을 11바이트로 저장함)
기본값  : NLS_TERRITORY에서 파생된 값

nls_timestamp_tz_format
설명    : NLS_TIME_TZ_FORMAT과 유사하며 한 쌍의 값으로 날짜의 YEAR, MONTH, DAY
값과 시간의 HOUR, MINUTE, SECOND 값을 비롯한 TIMEZONE_HOUR와 TIMEZONE_MINUTE 값
을 저장하는 TIMESTAMP 데이터의 기본값을 지정합니다.
구문         : TIMESTAMP '1997- 01- 31 09:26:50+ 02: 00'. (값을 13바이트로 저장
함)
기본값  : NLS_TERRITORY에서 파생된 값

 

O
object_cache_max_size_percent
설명    : 세션 객체 캐시가 최적 크기를 초과할 수 있는 최적 캐시 크기 백분율을 지
정합니다. 최대 크기는 최적 크기와 최적 크기에 이 백분율을 곱한 값의 합과 같습니
다. 캐시 크기가 이 최대 크기를 초과하면 시스템은 캐시를 최적 크기로 축소합니다.
사용 가능한 값: 0%에서 운영 체제에 따른 최대값까지입니다.
기본값  : 10%

object_cache_optimal_size
설명    : 캐시 크기가 최대 크기를 초과할 때 세션 객체 캐시를 어느 크기로 축소할
지 지정합니다.
사용 가능한 값: 10K에서 운영 체제 특정 최대값까지입니다.
기본값  : 100K

open_cursors
설명    : 세션이 한 번에 가질 수 있는 열린 커서(컨텍스트 영역)의 최대 수와 사용
자에 의해 재실행되는 명령문을 다시 구문 분석하지 않기 위해 PL/SQL이 사용하는 PL/
SQL 커서 캐시 크기를 지정합니다. 이 값을 충분히 크게 설정하면 응용 프로그램에 의
해 열린 커서가 부족해지는 현상을 방지할 수 있습니다.
사용 가능한 값: 1 에서 운영 체제 제한값까지입니다.
기본값  : 64

open_links
설명    : 하나의 세션에서 원격 데이터베이스에 대해 동시에 열 수 있는 접속의 최대
 수를 지정합니다. 이 값은 모든 데이터베이스를 열어 해당 명령문을 실행할 수 있도
록 여러 데이터베이스를 참조하는 단일 SQL 문에서 언급된 데이터베이스 수보다 크거
나 같아야 합니다.
사용 가능한 값: 0에서 255까지입니다. (0인 경우 분산 트랜잭션 사용 금지)
기본값  : 4

open_links_per_instance
설명    : XA 응용 프로그램의 이전 가능한 열린 접속의 최대 수를 지정합니다. XA 트
랜잭션은 이전 가능한 열린 접속을 사용하여 트랜잭션이 커밋된 후 접속을 캐시로 저
장합니다. 트랜잭션은 접속을 생성한 사용자와 트랜잭션을 소유한 사용자가 동일한 경
우 접속을 공유할 수 있습니다.
사용 가능한 값: 0 - UB4MAXVAL
기본값  : 4

optimizer_features_enable
설명    : 최적기 기능을 제어하는 ini.ora 매개변수의 변경을 허용합니다. 영향을 받
는 매개변수는 PUSH_JOIN_PREDICATE, FAST_FULL_SCAN_ENABLED, COMPLEX_VIEW_MERGING
및 B_TREE_BITMAP_PLANS입니다.
사용 가능한 값: 8.0.0, 8.0.3, 8.0.4, 8.1.3입니다.
기본값  : 8.0.0

optimizer_index_caching
설명    : 중첩 루프 조인의 버퍼 캐시에 저장할 인덱스 블록의 비율에 대한 비용 기
반 가정을 조정합니다. 이 값을 조정하면 인덱스가 사용되는 중첩 루프 조인의 실행
비용에 영향을 줍니다. 이 매개변수 값을 크게 설정하면 최적기가 중첩 루프 조인의
실행에 부담을 덜 느끼게 됩니다.
사용 가능한 값: 0에서 100%까지입니다.
기본값  : 0

optimizer_index_cost_adj
설명    : 고려할 인덱스 액세스 경로의 수가 너무 많거나 너무 적을 때 최적기 성능
을 조정하기 위해 사용됩니다. 작은 값을 설정하면 최적기가 더 자주 인덱스를 선택하
게 됩니다. 즉, 값을 50%로 설정하면 인덱스 액세스 경로의 부담이 정상의 반이 됩니
다.
사용 가능한 값: 1 - 10000
기본값  : 100(인덱스 액세스 경로의 일반적인 비용)

optimizer_max_permutations
설명    : 대규모 조인을 가진 질의를 구문 분석할 때 최적기가 고려하는 테이블 순열
의 수를 제한합니다. 이렇게 하면 질의 구문 분석 시간을 허용 한도 내로 단축시킬 수
 있지만 찾은 계획이 최적이 아닐 수 있습니다. 일반적으로 1000 이하의 값을 사용하
면 구문 분석 시간을 수 초 이내로 유지할 수 있습니다.
사용 가능한 값: 4에서 2^32(~43억)까지입니다.
기본값  : 80,000

optimizer_mode
설명    : 최적기 기능을 지정합니다. RULE로 설정하면 질의에 힌트가 포함되어 있지
않은 경우 규칙 기반 최적기가 사용됩니다. CHOOSE로 설정하면 명령문의 테이블에 통
계가 없는 경우 비용 기반 최적기가 사용됩니다. ALL_ROWS 또는 FIRST_ROWS로 설정하
면 항상 비용 기반 최적기를 사용합니다.
사용 가능한 값: RULE | CHOOSE | FIRST_ROWS | ALL_ROWS
기본값  : CHOOSE

oracle_trace_collection_name
설명    : Oracle Trace 모음 이름을 지정하여 출력 파일 이름(모음 정의 파일 .cdf와
 데이터 모음 파일 .dat)에 사용됩니다. 이 매개변수가 NULL이 아니면 이 값이 다시 N
ULL로 설정될 때까지 ORACLE_TRACE_ENABLE = TRUE로 되어 기본 Oracle Trace 모음이
시작됩니다.
사용 가능한 값: 최대 16자 길이의 유효한 모음 이름입니다. (8자 길이의 파일 이름을
 사용하는 플랫폼 제외)
기본값  : NULL

oracle_trace_collection_path
설명    : Oracle Trace 모음 정의(.cdf)와 데이터 모음(.dat) 파일이 있는 디렉토리
의 경로명을 지정합니다.
사용 가능한 값: 전체 디렉토리 경로명입니다.
기본값  : 운영 체제 지정값(일반적으로 ORACLE_HOME/otrace/admin/cdf)

oracle_trace_collection_size
설명    : Oracle Trace 모음 파일의 최대 크기를 바이트 단위로 지정합니다. 모음 파
일 크기가 이 최대값에 도달하면 모음 기능이 사용 중지됩니다. 범위 값이 0인 경우에
는 크기 제한이 없습니다.
사용 가능한 값: 0 - 4294967295
기본값  : 5242880

oracle_trace_enable
설명    : 서버의 Oracle Trace 모음 기능을 활성화하려면 이 값을 TRUE로 설정하십시
오. TRUE로 설정된 경우 Oracle Trace를 해당 서버에 대해 사용할 수 있습니다. 모음
을 시작하려면 ORACLE_TRACE_COLLECTION_NAME에 NULL이 아닌 값을 지정하거나 Oracle
Trace Manager를 사용하여 모음을 시작합니다.
사용 가능한 값: TRUE | FALSE
기본값  : FALSE

oracle_trace_facillty_name
설명    : Oracle Trace 제품 정의 파일 이름(.fdf 파일)을 지정합니다. 이 파일에는
Oracle Trace 데이터 모음 API를 사용하는 제품에 대해 모여진 모든 이벤트 및 데이터
 항목의 정의 정보가 포함되어 있습니다. Oracle은 기본 파일인 ORCLED.FDF의 사용을
권장합니다.
사용 가능한 값: 최대 16자 길이의 유효한 기능 이름입니다.
기본값  : oracled

oracle_trace_facillity_path
설명    : Oracle TRACE 기능 정의(.fdf) 파일이 위치한 디렉토리 경로명을 지정합니
다.
사용 가능한 값: 전체 디렉토리 경로명입니다.
기본값  : ORACLE_HOME/otrace/admin/fdf/(운영 체제에 따라 다름)

os_authent_prefix
설명    : 사용자의 운영 체제 계정 이름과 암호를 사용하여 서버에 접속한 사용자를
인증합니다. 이 매개변수 값은 모든 사용자의 운영 체제 계정의 시작에 연결됩니다. N
ULL값을 지정하면 OS 계정 접두어를 제거할 수 있습니다.
사용 가능한 값: 임의의 식별자입니다.
기본값  : 운영 체제 지정값(일반적으로 'OPS$')

os_roles
설명    : 운영 체제 또는 데이터베이스가 각 사용자의 롤을 식별할지 지정합니다. TR
UE로 설정하면 운영 체제가 모든 데이터베이스 사용자에 대한 롤 부여를 전적으로 관
리합니다. 그렇지 않으면 데이터베이스가 롤을 식별하고 관리합니다.
사용 가능한 값: TRUE | FALSE
기본값  : FALSE


P
parallel_adaptive_multi_user
설명    : 다중 사용자 환경에서 병렬 실행을 사용하여 성능을 향상시키기 위해 고안
된 적응 알고리즘을 활성화하거나 비활성화합니다. 시스템 부하를 바탕으로 요청된 병
렬 실행 수를 자동으로 축소하여 질의 시작 단계에서 이 작업을 수행합니다. PARALLEL
_AUTOMATIC_TUNING = TRUE로 설정된 경우 가장 잘 사용됩니다.
사용 가능한 값: TRUE | FALSE
기본값  : PARALLEL_AUTOMATIC_TUNING = TRUE로 설정된 경우 TRUE, 아니면 FALSE

parallel_automatic_tuning
설명    : TRUE로 설정된 경우 병렬 실행을 제어하는 매개변수의 기본값을 Oracle이
결정합니다. 이 매개변수의 설정과 더불어 시스템의 테이블에 대한 병렬 계산을 설정
해야 합니다.
사용 가능한 값: TRUE | FALSE
기본값  : FALSE

parallel_broadcast_enabled
설명    : 해시 또는 병합 조인을 사용하여 소규모 결과 집합(크기는 행이 아닌 바이
트 단위로 측정됨)에 조인된 대량의 결과 집합에 대한 성능 향상을 제공할 수 있습니
다. TRUE로 설정된 경우 최적기는 소규모 결과 집합의 각 행을 보다 큰 집합의 각 클
러스터 데이터베이스 프로세싱 행에 대해 브로드캐스트할 수 있습니다. \n사용 가능한
 값: TRUE | FALSE \n기본값  : FALSE

parallel_execution_message_size
설명    : 병렬 실행(병렬 질의, PDML(병렬 데이터 조작어), 병렬 복구, 복제)의 메시
지 크기를 지정합니다. 2048 또는 4096보다 큰 값을 지정하면 보다 큰 공유 풀이 필요
합니다. PARALLEL_AUTOMATIC_TUNING = TRUE로 설정된 경우 메시지 버퍼는 대형 풀의
외부에 할당됩니다.
사용 가능한 값: 2148에서 무한대입니다.
기본값  : PARALLEL_AUTOMATIC_TUNING이 FALSE로 설정된 경우 일반적으로 2148 또는 P
ARALLEL_AUTOMATIC_TUNING이 TRUE로 설정된 경우 4096(운영 체제에 따라 다름)

parallel_instance_group
설명    : 클러스터 데이터베이스 매개변수로 병렬 실행 슬래이브 생성에 사용되는 병
렬 인스턴스 그룹의 식별에 사용됩니다. 병렬 작업은 해당 INSTANCE_GROUPS 매개변수
에 일치 그룹을 지정한 인스턴스에 대해서만 병렬 실행 슬래이브를 생성합니다. \n사
용 가능한 값: 그룹 이름을 나타내는 문자열입니다. \n기본값  : 현재 활성화된 모든
인스턴스로 구성된 그룹

parallel_max_servers
설명    : 인스턴스에 대한 병렬 실행 서버 또는 병렬 복구 프로세스의 최대 수를 지
정합니다. 인스턴스 시작 시 할당된 질의 서버의 수는 수요에 따라 이 값까지 증가하
게 됩니다.
사용 가능한 값: 0 - 256
기본값  : CPU_COUNT, PARALLEL_AUTOMATIC_TUNING, PARALLEL_ADAPTIVE_MULTI_USER 값
에 따라 다름

parallel_min_percent
설명    : 병렬 실행에 필요한 스레드의 최소 비율을 퍼센트 단위로 지정합니다. 적절
한 수의 질의 슬래이브를 병렬 실행에 사용할 수 없을 경우 오류 메시지를 표시하고
질의가 순차적으로 실행되지 않도록 하려면 이 매개변수를 설정하십시오.
사용 가능한 값: 0 - 100
기본값  : 0(이 매개변수를 사용하지 않음을 나타냄)

parallel_min_servers
설명    : 병렬 실행을 위해 인스턴스를 시작했을 때 Oracle이 생성하는 질의 서버 프
로세스의 최소 개수를 지정합니다.
사용 가능한 값: 0에서 PARALLEL_MAX_SERVERS까지입니다.
기본값  : 0

parallel_server
설명    : 클러스터 데이터베이스 옵션을 활성화하려면 PARALLEL_SERVER를 TRUE로 설
정하십시오. \n사용 가능한 값: TRUE | FALSE \n기본값  : FALSE

parallel_server_instances
설명    : 현재 구성된 인스턴스의 수입니다. 이 값은 구성된 인스턴스의 수에 따라 S
GA 구조의 크기를 결정할 때 사용됩니다. 이 매개변수 값을 적당히 설정하면 SGA의 메
모리 사용을 개선할 수 있습니다. 여러 매개변수가 이 값을 사용하여 계산됩니다.
사용 가능한 값: 0이 아닌 임의의 값입니다.
기본값  : 1

parallel_threads_per_cpu
설명    : 병렬 실행 중 또는 병렬 적응 알고리즘 및 로드 밸런싱 알고리즘을 조정하
기 위해 CPU가 처리할 수 있는 스레드 또는 프로세스의 수를 나타냅니다. 대표 질의를
 실행할 때 시스템이 과부하되면 이 값을 줄여야 합니다.
사용 가능한 값: 0이 아닌 임의의 값입니다.
기본값  : 운영 체제에 따라 다름(일반적으로 2)

partition_view_enabled
설명    : PARTITION_VIEW_ENABLED가 TRUE로 설정된 경우 최적기는 분할 영역 보기에
서 불필요한 테이블 액세스를 제거하거나 생략합니다. 이 매개변수는 최적기가 기본
테이블에 대한 통계에서 분할 영역 보기에 대한 통계를 계산하는 비용 기반 방법을 변
경할 수 있습니다.
사용 가능한 값: TRUE | FALSE
기본값  : FALSE

pga_aggregate_target
설명: 인스턴스에 첨부된 모든 서버 프로세스의 총 대상 PGA 메모리를 지정합니다. 작
업 영역의 자동 설정을 활성화하기 전에 이 매개변수를 양수 값으로 설정하십시오. 이
 메모리는 SGA에 상주하지 않습니다. 데이터베이스는 사용하는 PGA 메모리의 대상 크
기로 이 매개변수를 사용합니다. 이 매개변수를 설정할 때 Oracle 인스턴스에 대해 사
용 가능한 시스템의 총 메모리에서 SGA를 빼십시오. 남은 메모리는 pga_aggregate_tar
get에 할당할 수 있습니다.
사용 가능한 값: 이 제한을 KB, MB, GB 단위로 지정하기 위해 문자 K, M 또는 G를 붙
인 정수입니다. 최소값은 10M이고 최대값은 4000G입니다. 
기본값: 작업 영역의 자동 조정이 완전히 비활성화되어 있음을 의미하는 "지정되지 않
음"입니다.

pl_sql_compiler_flags
설명: PL/SQL 컴파일러에 의해 사용됩니다. 컴파일러 플래그 목록을 콤마로 구분된 문
자열 목록으로 지정합니다.
사용 가능한 값: native(PL/SQL 모듈이 원시 코드로 컴파일됨), interpreted(PL/SQL
모듈이 PL/SQL 바이트 코드 형식으로 컴파일됨), debug(PL/SQL 모듈이 조사 디버그 기
호를 사용하여 컴파일됨), non_debug입니다.
기본값: " interpreted, non_debug "

plsql_native_c_compiler
설명: 생성된 C 파일을 객체 파일로 컴파일하는 데 사용되는 C 컴파일러의 전체 경로
명을 지정합니다. 이 매개변수는 선택 사항입니다. 각 플랫폼에 제공되는 플랫폼별 ma
ke 파일은 이 매개변수에 대한 기본값을 포함합니다. 값이 이 매개변수에 대해 지정되
는 경우 해당 값은 make 파일의 기본값보다 우선 적용됩니다.
사용 가능한 값: C 컴파일러의 전체 경로입니다.
기본값: 없음

plsql_native_library_subdir_count

plsql_native_library_dir
설명: PL/SQL 컴파일러에 의해 사용됩니다. 원시 컴파일러에 의해 만들어진 공유 객체
가 있는 디렉토리명을 지정합니다.
사용 가능한 값: 디렉토리명입니다.
기본값: 없음

plsql_native_linker
설명: 이 매개변수는 객체 파일을 공유 객체나 DLL에 링크시키는 데 사용하는 UNIX의
ID 또는 GNU lD와 같은 링커의 전체 경로명을 지정합니다. 이 매개변수는 선택 사항입
니다. 각 플랫폼에 제공되는 플랫폼별 make 파일은 이 매개변수에 대한 기본값을 포함
합니다. 값이 이 매개변수에 대해 지정되는 경우 해당 값은 make 파일의 기본값보다
우선 적용됩니다.
사용 가능한 값: 링커의 전체 경로명입니다.
기본값: 없음

plsql_native_make_file_name
설명: make 파일의 전체 경로명을 지정합니다. make 유틸리티(PLSQL_NATIVE_MAKE_UTIL
ITY에 의해 지정됨)는 이 make 파일을 사용하여 공유 객체나 DLL을 생성합니다. 해당
플랫폼에 DLL을 생성하는 make 유틸리티에 대한 규칙을 포함하는 포트별 make 파일이
각 플랫폼에 제공됩니다.
사용 가능한 값: make 파일의 전체 경로명입니다.
기본값: 없음

plsql_native_make_utility
설명: UNIX의 make 또는 gmake(GNU make)와 같은 make 유틸리티의 전체 경로명을 지정
합니다. make 유틸리티는 생성된 C 소스에서 공유 객체나 DLL을 생성하는 데 필요합니
다.
사용 가능한 값: make 유틸리티의 전체 경로명입니다.
기본값: 없음

plsql_v2_compatibility
설명    : PL/SQL의 호환성 수준을 설정합니다. FALSE로 설정된 경우 PL/SQL V3 기능
을 사용하고 V2 기능은 금지됩니다. 그렇지 않은 경우 PL/SQL V3를 실행할 때 특정 PL
/SQL V2 기능이 허용됩니다.
사용 가능한 값: TRUE | FALSE
기본값  : FALSE

pre_page_sga
설명    : 플랫폼에 따라 결정되는 매개변수로 TRUE로 설정된 경우 모든 SGA 페이지를
 메모리로 로드하여 인스턴스가 신속하게 최대 성능에 도달할 수 있도록 합니다. 따라
서 이렇게 하면 인스턴스 시작 및 사용자 로그인 시간이 길어지지만 충분한 메모리를
확보하여 시스템 상의 페이지 오류를 줄일 수 있습니다.
사용 가능한 값: TRUE | FALSE
기본값  : FALSE

processes
설명    : Oracle 서버에 동시에 접속할 수 있는 운영 체제 사용자 프로세스의 최대
수를 지정합니다. 이 값은 작업 대기열(SNP)과 병렬 실행(Pnnn) 프로세스와 같은 모든
 백그라운드 프로세스의 수를 고려해야 합니다.
사용 가능한 값: 6에서 운영 체제 특정 값까지입니다.
기본값  : PARALLEL_MAX_SERVERS 값에 따라 다름

 

Q
query_rewrite_enabled
설명    : 구체화된 뷰에 대한 질의 재작성을 활성화하거나 비활성화합니다. 세션 매
개변수 및 별개의 구체화된 뷰가 모두 활성화되고 비용 기반 최적화가 활성화된 경우
에만 특정 구체화된 뷰를 활성화합니다.
사용 가능한 값: TRUE | FALSE
기본값  : FALSE

query_rewrite_integrity
설명    : Oracle 서버에 의해 강제로 실행되는 질의 재작성의 정도를 나타냅니다. EN
FORCED로 설정된 경우 Oracle이 일관성과 무결성을 보증하게 됩니다. TRUSTED로 설정
된 경우 선언된 관계를 사용한 재작성이 가능합니다. STALE_TOLERATED로 설정된 경우
구체화된 뷰는 비록 기본 데이터와 일치하지 않는 경우라도 재작성할 수 있습니다.
사용 가능한 값: ENFORCED, TRUSTED, STALE_TOLERATED
기본값  : ENFORCED

 

R
rdbms_server_dn
설명    : RDBMS 서버의 식별 이름입니다. 이 이름은 전사적인 디렉토리 서비스에서
전사적인 롤을 읽어 들이는 데 사용됩니다. 자세한 내용은 Oracle Advanced Security
Administrator's Guide를 참조하십시오.
사용 가능한 값: 모든 X.500 식별 이름 형식의 값입니다.
기본값  : 없음

read_only_open_delayed
설명    : 대부분의 데이터가 읽기 전용 테이블스페이스에 저장된 대규모 데이터베이
스의 시작과 같은 특정 작업의 처리 속도를 향상시키는 데 사용됩니다. TRUE로 설정된
 경우 테이블스페이스에서 데이터를 읽을 때 읽기 전용 테이블스페이스의 데이터에 먼
저 액세스합니다. 가능한 부작용에 대한 내용은 서버 참조 설명서를 참조하십시오.
사용 가능한 값: TRUE | FALSE
기본값  : FALSE

recovery_parallelism
설명    : 인스턴스 또는 매체 복구에 참여하는 프로세스의 수를 지정합니다. 0 또는
1의 값을 지정하면 단일 프로세스가 복구를 순차적으로 수행합니다.
사용 가능한 값: 운영 체제에 따라 다릅니다. (PARALLEL_MAX_SERVERS 값을 초과할 수
없음)
기본값  : 운영 체제에 따라 다름

remote_archive_enable
설명: 원격 대상에 대한 리두 로그 파일의 아카이브가 허용되는지 여부를 제어합니다.
 오라클 데이터베이스 인스턴스가 REDO 로그 파일을 원격으로 아카이브하거나 아카이
브 REDO 로그 파일을 원격으로 받으려면 매개변수를 값 "TRUE"로 설정해야 합니다.
사용 가능한 값: FALSE | TRUE
기본값: TRUE

remote_dependencies_mode
설명    : 원격 PL/SQL 내장 프로시저에 대한 종속성을 데이터베이스가 처리하는 방법
을 지정하는 데 사용됩니다. TIMESTAMP로 설정하면 서버와 로컬 시간 기록이 일치할
경우에만 프로시저가 실행됩니다. SIGNATURE로 설정하면 서명이 유효한 경우 프로시저
가 실행됩니다.
사용 가능한 값: TIMESTAMP | SIGNATURE
기본값  : TIMESTAMP

remote_listener

remote_login_passwordfile
설명    : 권한 사용자의 암호를 운영 체제에서 확인할지 파일로 확인할지 지정합니다
. NONE으로 설정하면 Oracle은 암호 파일을 무시합니다. EXCLUSIVE로 설정하면 각 권
한 사용자를 데이터베이스의 암호 파일을 사용하여 인증합니다. SHARED로 설정하면 많
은 수의 데이터베이스가 SYS 및 INTERNAL 암호 파일 사용자를 공유합니다.
사용 가능한 값: NONE | SHARED | EXCLUSIVE
기본값  : NONE

remote_os_authent
설명    : REMOTE_OS_AUTHENT를 TRUE로 설정하면 OS_AUTHENT_PREFIX 값을 사용한 원격
 클라이언트의 인증을 허용합니다.
사용 가능한 값: TRUE | FALSE
기본값  : FALSE

remote_os_roles
설명    : REMOTE_OS_ROLES를 TRUE로 설정하면 운영 체제가 원격 클라이언트에 대한
롤을 지정할 수 있습니다. FALSE로 설정하면 원격 클라이언트에 대한 롤은 데이터베이
스가 식별하고 관리합니다.
사용 가능한 값: TRUE | FALSE
기본값  : FALSE

replication_dependency_tracking
설명    : 복제 서버가 변경 사항을 병렬로 전달하려면 종속성 추적이 중요합니다. FA
LSE로 설정하면 데이터베이스에 대한 읽기/쓰기 작업의 실행 속도는 빨라지지만 복제
서버에 대한 병렬 전달 종속 정보는 생성되지 않습니다.
사용 가능한 값: TRUE | FALSE
기본값  : TRUE(읽기/쓰기 종속성 추적 활성화)

resource_limit
설명    : 데이터베이스 프로파일에 리소스 제한의 강제 수행 여부를 결정합니다. FAL
SE로 설정하면 리소스 제한의 강제 적용을 비활성화하고, TRUE 값으로 설정하면 리소
스 제한의 강제 적용을 활성화합니다.
사용 가능한 값: TRUE | FALSE
기본값  : FALSE

resource_manager_plan
설명    : 지정된 경우 리소스 관리자가 인스턴스의 계획과 모든 종속 항목(하위 계획
, 지침 및 소비자 그룹)을 활성화합니다. 지정되지 않은 경우 리소스 관리자는 비활성
화되지만 ALTER SYSTEM 명령을 사용하면 활성화할 수 있습니다.
사용 가능한 값: 임의의 유효한 문자열입니다.
기본값  : NULL

rollback_segments
설명    : 값이 TRANSACTIONS / TRANSACTIONS_PER_ROLLBACK_SEGMENT 값을 초과하더라
도 인스턴스 시작 중 획득할 하나 이상의 롤백 세그먼트를 지정합니다. 형식: ROLLBAC
K_SEGMENTS = (rbseg_name [, rbseg_name] ... )
사용 가능한 값: DBA_ROLLBACK_SEGS에 나열된 임의의 롤백 세그먼트 이름입니다. (SYS
TEM 제외)
기본값  : NULL(공용 롤백 세그먼트가 기본값으로 사용됨)

row_locking
설명    : 테이블 갱신 시 행 잠금의 획득 여부를 지정합니다. ALWAYS로 설정하면 테
이블이 갱신될 때만 행 잠금을 획득합니다. INTENT로 설정하면 SELECT FOR UPDATE에
대해 행 잠금만 사용되지만 갱신 시에는 테이블 잠금을 획득합니다.
사용 가능한 값: ALWAYS | DEFAULT | INTENT
기본값  : ALWAYS

 

S
serial_reuse
설명    : 직렬의 재사용 가능 메모리 기능을 사용할 SQL 커서의 유형을 지정합니다.
CURSOR_SPACE_FOR_TIME = TRUE로 설정된 경우 SERIAL_REUSE 값은 무시되어 DISABLE 또
는 NULL로 설정된 것으로 처리됩니다.
사용 가능한 값: DISABLE | SELECT | DML | PLSQL | ALL | NULL
기본값  : NULL

serializable
설명    : 질의가 테이블 수준의 읽기 잠금을 획득하여 해당 질의가 포함된 트랜잭션
이 커밋될 때까지 모든 객체 읽기 갱신을 금지할지 결정합니다. 이 작업 모드는 반복
가능한 읽기를 제공하여 동일한 트랜잭션 내의 동일한 데이터에 대한 두 개의 질의가
동일한 값을 반환하는지 확인할 수 있습니다.
사용 가능한 값: TRUE | FALSE
기본값  : FALSE

session_cached_cursors
설명    : 캐시로 저장할 세션 커서의 수를 지정합니다. 동일한 SQL 문을 여러 번 구
문 분석하면 해당 세션 커서가 세션 커서 캐시로 이동합니다. 이렇게 하면 커서가 캐
시로 저장되어 다시 열 필요가 없으므로 구문 분석 시간이 줄어듭니다.
사용 가능한 값: 0에서 운영 체제 특정 값까지입니다.
기본값  : 0

session_max_open_files
설명    : 특정 세션에서 열 수 있는 BFILE의 최대 수를 지정합니다. 이 값에 도달하
면 추가로 파일을 열기 위한 이후의 시도는 실패하게 됩니다. 이 매개변수는 운영 체
제 매개변수인 MAX_OPEN_FILES에도 종속됩니다.
사용 가능한 값: 1에서 (50, OS 수준의 MAX_OPEN_FILES)의 최소값입니다.
기본값  : 10

sessions
설명    : 사용자와 시스템 세션의 총 수를 지정합니다. 기본값은 순환 세션의 수를
고려하여 PROCESSES 값보다 큽니다.
사용 가능한 값: 임의의 정수값입니다.
기본값  : 파생(1.1 * PROCESSES + 5)

service_names
설명    : Oracle Net 리스너가 복제된 환경의 특정 데이터베이스와 같은 단일 서비스
를 식별하기 위해 사용할 수 있는 인스턴스의 서비스 이름을 지정합니다. 서비스에 도
메인이 없으면 DB_DOMAIN 매개변수가 추가됩니다.
구문         : SERVICE_NAMES = name1.domain, name2.domain
기본값  : DB_NAME.DB_DOMAIN(정의된 경우)

shadow_core_dump
설명    : UNIX에서만 사용되는 매개변수로 생성된 코어 파일에 SGA 정보를 덤프할지
지정합니다. FULL로 설정하면 SGA가 코어 덤프에 포함됩니다. PARTIAL로 설정하면 SGA
는 덤프되지 않습니다.
사용 가능한 값: FULL | PARTIAL
기본값  : FULL

shared_memory_address
설명    : SHARED_MEMORY_ADDRESS와 HI_SHARED_MEMORY_ADDRESS는 런타임 시 SGA의 시
작 주소를 지정합니다. 많은 플랫폼에서는 SGA의 시작 주소를 링크 시 지정하므로 이
러한 매개변수는 해당 플랫폼에서 무시됩니다. 두 매개변수가 모두 0 또는 NULL일 경
우 주소는 플랫폼 고유값을 사용하게 됩니다.
사용 가능한 값: 임의의 정수값입니다.
기본값  : 0

shared_pool_reserved_size
설명    : 단편화로 인한 성능 저하를 피하기 위해 공유 풀 메모리의 연속된 대규모
요청에 대해 예약된 공간을 지정합니다. 이러한 풀은 공유 풀에서 객체를 비우지 않도
록 공통적으로 필요한 모든 대규모 프로시저 및 패키지를 저장할 수 있는 크기여야 합
니다.
사용 가능한 값: SHARED_POOL_RESERVED_MIN_ALLOC에서 0.5 *
 SHARED_POOL_SIZE까지입니다. (바이트 단위)
기본값  : SHARED_POOL_SIZE 값의 5%

shared_pool_size
설명    : 공유 풀의 크기를 바이트 단위로 지정합니다. 공유 풀에는 공유 커서, 내장
 프로시저, 제어 구조 및 병렬 실행 메시지 버퍼와 같은 객체가 포함되어 있습니다.
이 값을 크게 설정하면 다중 사용자 환경에서 성능을 향상시킬 수 있습니다.
사용 가능한 값: 300 KB에서 운영 체제 특정 값입니다.
기본값  : 64비트인 경우 64MB, 아니면 16MB

shared_server_sessions
설명    : 허용할 공유 서버 구조 사용자 세션의 총 수를 지정합니다. 이 매개변수를
설정하면 전용 서버의 사용자 세션을 예약할 수 있습니다.
사용 가능한 값: 0부터 (SESSIONS - 5)까지 
기본값  : 파생: MTS_CIRCUITS 값과 (SESSIONS - 5) 값 중 작은 값

shared_servers
설명    : 공유 서버 환경에서 인스턴스가 시작될 때 생성할 서버 프로세스의 수를 지
정합니다.
사용 가능한 값: 운영 체제에 따라 다릅니다.
기본값  : 1

sga_max_size
설명: 인스턴스 사용 기간에 대한 시스템 글로벌 영역의 최대 크기를 지정합니다.
사용 가능한 값: 운영 체제에 따라 0입니다. 시작 시 최소값을 조정하면 부적절하다는
 것에 유념하십시오.
기본값: 지정된 값이 없는 경우 sga_max_size의 기본값은 시작 시 SGA의 초기 크기, X
와 동일합니다. 이 크기는 SGA에서의 다른 풀(예: 버퍼 캐시, 공유 풀, 대형 풀 등)
크기에 따라 다릅니다. 값이 X보다 작은 것으로 지정되는 경우 사용 중인 sga_max_siz
e의 크기는 X가 됩니다. 즉, 최대값(X는 사용자가 지정한 sga_max_size 값)입니다.

sort_area_retained_size
설명    : 정렬 실행이 완료된 후 보유한 사용자 전역 영역(UGA) 메모리의 최대 크기
를 지정합니다. 이 메모리는 정렬 공간에서 마지막 행이 인출된 후 운영 체제가 아닌
UGA로 환원됩니다.
사용 가능한 값: 두 개의 데이터베이스 블록에 해당하는 값부터 SORT_AREA_SIZE 값까
지입니다.
기본값  : SORT_AREA_SIZE 값

sort_area_size
설명    : SORT_AREA_SIZE는 정렬에 사용하는 메모리의 최대 크기를 바이트 단위로 지
정합니다. 정렬이 완료된 후 행은 반환되고 메모리는 해제됩니다. 대규모 정렬의 효율
성을 향상시키려면 이 크기를 증가시키십시오. 메모리가 초과되면 임시 디스크 세그먼
트를 사용합니다.
사용 가능한 값: 6개의 데이터베이스 블록에 해당하는 값(최소값)에서 운영 체제 특정
 값(최대값)까지입니다.
기본값  : 운영 체제에 따라 다름

spfile
설명: 사용 중인 현재 서버 매개변수 파일의 이름을 지정합니다.
사용 가능한 값: 정적 매개변수
기본값: SPFILE 매개변수는 사용할 서버 매개변수 파일의 이름을 나타내기 위해 클라
이언트측 PFILE에 정의될 수 있습니다. 서버에서 기본 서버 매개변수 파일을 사용하는
 경우 SPFILE 값은 서버에 의해 내부적으로 설정됩니다.

sql_trace
설명    : SQL 추적 기능을 활성화하거나 비활성화합니다. TRUE로 설정된 경우 성능
개선에 유용한 조정 정보를 수집합니다. SQL 추적 기능은 시스템 오버헤드를 유발하므
로 TRUE 설정은 조정 정보가 필요한 경우에만 사용해야 합니다.
사용 가능한 값: TRUE | FALSE
기본값  : FALSE

sql_version
설명    :  사용되지 않음

sql92_security
설명: 해당 참조 테이블 열 값의 갱신 또는 삭제를 실행하는 데 테이블 수준 SELECT
권한이 필요한지 여부를 지정합니다.
사용 가능한 값: TRUE | FALSE
기본값: FALSE

standby_archive_dest
설명    : 기본 인스턴스의 아카이브 로그 위치를 지정합니다. STANDBY_ARCHIVE_DEST
및 LOG_ARCHIVE_FORMAT 값을 사용하여 대기 사이트의 전체 아카이브 로그 파일 이름을
 구성합니다. 대기 데이터베이스의 RFS 서버는 ARCHIVE_LOG_DEST 값이 아닌 이 값을
사용합니다.
사용 가능한 값: NULL 문자열 또는 원시 장치 이름을 제외한 유효한 경로/장치 이름입
니다.
기본값  : NULL

standby_file_management

standby_preservs_names
설명: 대기 데이터베이스의 파일 이름이 기본 데이터베이스의 파일 이름과 동일한지
여부를 나타냅니다.
사용 가능한 값: TRUE 또는 FALSE입니다. 참고: 값을 True로 설정하고 대기 데이터베
이스가 기본 데이터베이스와 동일한 시스템에 있는 경우 기본 데이터베이스 파일은 겹
쳐쓰여질 수 있습니다.
기본값: FALSE입니다.

start_transformation_enabled
설명    : 스타 질의에 대해 비용 기반 질의 변환의 적용 여부를 결정합니다. TRUE로
설정된 경우 최적기는 스타 질의에 대한 비용 기반 변환을 고려합니다. FALSE로 설정
된 경우 변환을 사용하지 않습니다. TEMP_DISABLE로 설정하면 질의 변환을 고려하지만
 임시 테이블은 사용되지 않습니다.
사용 가능한 값: TRUE | FALSE | TEMP_DISABLE
기본값  : FALSE

 


T
tape_asynch_io
설명    : 순차 장치에 대한 비동기 입출력(예: Oracle 입출력 테이프 데이터의 BACKU
P 또는 RESTORE) 제어에 사용됩니다. TRUE 값은 사용 중인 플랫폼이 기록 장치에 대한
 비동기 입출력을 지원하는 경우에만 유효합니다. 비동기 입출력 구현이 안정적이지
않을 때는 FALSE 값을 사용하십시오.
사용 가능한 값: TRUE | FALSE
기본값  : FALSE

thread
설명    : 클러스터 데이터베이스 매개변수로 각 인스턴스에 대한 고유한 리두 스레드
 번호를 지정합니다. 인스턴스의 리두 스레드를 비활성화하면 해당 인스턴스를 시작할
 수 없습니다. 0으로 설정하면 활성화된 사용 가능한 공용 스레드를 선택하게 됩니다.
 \n사용 가능한 값: 0에서 활성화된 최대 스레드 수까지입니다. \n기본값  : 0

timed_statistics
설명    : 데이터베이스와 SQL 문을 조정하는 데 사용할 수 있는 운영 체제 시간 정보
를 수집합니다. 운영 체제에서 시간을 요청하는 오버헤드를 방지하려면 이 값을 0으로
 설정합니다. TRUE로 설정하면 오래 지속되는 작업의 진행 상황을 보는 데 유용하게
사용할 수 있습니다.
사용 가능한 값: TRUE | FALSE
기본값  : FALSE

timed_os_statistics
설명    : 시스템 관리자가 운영 체제 통계를 수집하기 위해 사용합니다. 리소스를 효
율적으로 사용하기 위해 필요한 경우에만 이 값을 설정합니다. 전용 서버의 경우 운영
 체제 통계는 사용자가 접속 및 접속 해제하거나 지정된 시간 제한이 만료되어 호출이
 인출될 때 수집됩니다. 공유 서버의 경우 통계는 인출 또는 인입된 호출에 대해 수집
됩니다.
사용 가능한 값: 초 단위의 시간입니다.
기본값  : 0(운영 체제 통계 새로 고침 없음)

trace_enabled

tracefile_identifier

transaction_auditing
설명    : 트랜잭션 계층이 사용자 로그온 이름, 사용자 이름, 세션 ID, 일부 운영 체
제 정보 및 클라이언트 정보를 포함한 특수한 리두 레코드를 생성할지 결정합니다. 이
러한 레코드는 리두 로그 분석 도구를 사용할 때 유용할 수 있습니다.
사용 가능한 값: TRUE | FALSE
기본값  : TRUE

transactions
설명    : 동시 트랜잭션의 최대 수를 지정합니다. 이 값을 크게 설정하면 SGA 크기가
 증가하여 인스턴스 시작 시 할당된 롤백 세그먼트 수를 증가시킬 수 있습니다. 기본
값은 순환 트랜잭션 수를 고려하여 SESSIONS 값 크기보다 큽니다.
사용 가능한 값: 숫자입니다.
기본값  : 파생(1.1 * SESSIONS)

transactions_per_rollback_segment
설명    : 롤백 세그먼트당 허용된 동시 트랜잭션의 수를 지정합니다. 시작 시 획득하
는 롤백 세그먼트의 최소 수는 TRANSACTIONS 값을 이 매개변수 값으로 나눈 값에 해당
합니다. 롤백 세그먼트 이름을 ROLLBACK_SEGMENTS 매개변수에 지정하면 더 많은 수의
롤백 세그먼트를 획득할 수 있습니다.
사용 가능한 값: 1에서 운영 체제 특정 값까지입니다.
기본값  : 5

 

U
undo_retention
설명: UNDO_RETENTION 매개변수는 데이터베이스에 보유할 커밋된 실행 취소 정보의 양
을 지정하는 데 사용됩니다. 매개변수 값은 인스턴스 시작 시간에 설정할 수 있습니다
. 실행 취소 보존 공간 요구 사항을 만족시키는 데 필요한 실행 취소 공간의 양은 다
음과 같이 계산될 수 있습니다. UndoSpace = RD * UPS. 여기서 UndoSpace는 실행 취소
 블록 수로 나타나고 RD는 초 단위의 UNDO_RETENTION으로 나타나며 UPS는 초당 실행
취소 블록 수로 나타납니다.
사용 가능한 값: 허용 최대값은 (2 ** 32)초입니다.
기본값: 30초입니다.

undo_management
설명: 시스템이 사용해야 하는 실행 취소 공간 관리 모드를 지정합니다. AUTO로 설정
할 경우 인스턴스는 SMU 모드로 시작됩니다. 그렇지 않은 경우 RBU 모드로 시작됩니다
. RBU 모드에서 실행 취소 공간은 롤백 세그먼트로 외부적으로 할당됩니다. SMU 모드
에서 실행 취소 공간은 실행 취소 테이블스페이스로 외부적으로 할당됩니다.
사용 가능한 값: Auto 또는 Manual
기본값: 첫번째 인스턴스가 시작될 때 UNDO_MANAGEMENT 매개변수가 생략되는 경우 MAN
UAL의 기본값이 사용되며 인스턴스는 RBU 모드로 시작됩니다. 첫번째 인스턴스가 아닌
 경우 인스턴스는 모든 다른 기존의 인스턴스와 동일한 실행 취소 모드로 시작됩니다.

undo_suppress_errors
설명: 사용자가 SMU 모드로 RBU 작업(예: ALTER ROLLBACK SEGMENT ONLINE) 실행을 시
도하는 동안 오류를 방지할 수 있도록 합니다. 사용자는 모든 응용 프로그램 및 스크
립트가 SMU 모드로 변환되기 전에 SMU 기능을 사용할 수 있습니다.
사용 가능한 값: True 또는 False
기본값: False입니다.

undo_tablespace
설명: 실행 취소 테이블스페이스는 실행 취소 정보를 저장하는 데 단독으로 사용됩니
다. UNDO_TABLESPACE는 SMU(시스템 관리 실행 취소) 모드로만 사용할 수 있습니다. 지
정된 실행 취소 테이블스페이스, <undoname>은 인스턴스에 의해 사용됩니다. 테이블스
페이스가 존재하지 않는 경우, 실행 취소 테이블스페이스가 아닌 경우 또는 다른 인스
턴스에 의해 사용 중인 경우 인스턴스 STARTUP은 실패합니다.
기본값: 각 데이터베이스는 0 또는 더 많은 실행 취소 테이블스페이스를 포함합니다.
SMU 모드에서 각 ORACLE 인스턴스는 하나의 실행 취소 테이블스페이스에 할당됩니다.

use_indirect_data_buffers
설명    : 4GB 이상의 물리적 메모리를 지원할 수 있는 32비트 플랫폼에 대해 확장된
버퍼 캐시 방식의 사용을 제어합니다. 다른 플랫폼에서는 무시됩니다.
사용 가능한 값: TRUE | FALSE
기본값  : FALSE

user_dump_dest
설명    : 사용자 프로세스를 대신하여 디버깅 추적 파일을 기록할 위치의 디렉토리
경로명을 지정합니다. 예: NT의 경우 C:/ORACLE/UTRC; UNIX의 경우 /oracle/utrc; VMS
의 경우 DISK$UR3:[ORACLE.UTRC]
사용 가능한 값: 유효한 로컬 경로명, 디렉토리, 디스크입니다.
기본값  : 운영 체제에 따라 다름

utl_file_dir
설명    : 데이터베이스 관리자가 PL/SQL 파일 입출력이 허용된 디렉토리를 지정할 수
 있도록 합니다. 하나 이상의 디렉토리를 지정하려면 여러 개의 UTL_FILE_DIR 매개변
수를 사용하십시오. UTL_FILE_DIR 매개변수에 지정된 파일에 대해서는 모든 사용자가
읽기 또는 쓰기 작업을 수행할 수 있습니다.
사용 가능한 값: 임의의 유효한 디렉토리 경로입니다.
기본값  : 없음

 

V


W
workarea_size_policy
설명: 작업 영역 크기 조정 정책을 지정합니다. 이 매개변수는 작업 영역이 조정되는
모드를 제어합니다.
사용 가능한 값: AUTO, MANUAL입니다.
기본값: PGA_AGGREGATE_TARGET이 설정되어 있는 경우에는 AUTO, 그렇지 않은 경우에는
 MANUAL입니다.


X


Y


Z

 

반응형

'ORACLE > ADMIN' 카테고리의 다른 글

RMAN  (0) 2007.07.24
ORA-01555 (Snapshot too old) 에러 발생 원인과 대처 방법  (0) 2007.07.06
오라클 버젼 확인 명령어  (0) 2007.06.19
패스워드 제한 설정  (0) 2007.06.16
[Oracle] 권한 및 가능한 작업  (0) 2007.06.13
Posted by [PineTree]
ORACLE/ADMIN2007. 6. 19. 20:32
반응형

오라클 버젼 확인 명령어

 

SELECT * FROM product_component_version;

반응형
Posted by [PineTree]