제29장 DBMS_SYSTEM

내용 목차

29.1. 개요
29.2. 프러시저와 함수
29.2.1. SET_SQL_TRACE_IN_SESSION

본 장에서는 DBMS_SYSTEM 패키지의 기본 개념과 패키지 내의 프러시저와 함수를 사용하는 방법을 설명한다.

29.1. 개요

DBMS_SYSTEM은 특정 경우에 대한 시스템적인 제어에 유용한 프러시저 및 함수(들)을 제공한다.

SYS 권한이 있는 사용자만 이 패키지를 사용할 수 있다.

29.2. 프러시저와 함수

본 절에서는 DBMS_SYSTEM 패키지에서 제공하는 프러시저와 함수를 알파벳 순으로 설명한다.

29.2.1. SET_SQL_TRACE_IN_SESSION

특정 세션의 SQL 추적 로그 작성을 시작하거나 중지할 수 있다. 세션의 식별자 및 시리얼 번호는 V$SESSION 뷰를 통해 조회할 수 있다. SQL 추적 로그는 $TB_HOME/instance/$TB_SID/log/sqltrace 경로에 생성된다.

SET_SQL_TRACE_IN_SESSION 프러시저의 세부 내용은 다음과 같다.

  • 프로토타입

    DBMS_SYSTEM.SET_SQL_TRACE_IN_SESSION 
    (
        sid                 IN      NUMBER,
        serial#             IN      NUMBER,
        sql_trace           IN      BOOLEAN
    );
  • 파라미터

    파라미터설명
    sid세션의 식별자이다.
    serial#세션의 시리얼 번호이다.
    sql_traceSQL 추적 로그를 작성하려면 true, 중지하려면 false를 입력한다.
  • 예제

    begin
        for c in (select sid, serial# from v$session where username = 'TIBERO') loop
            DBMS_SYSTEM.SET_SQL_TRACE_IN_SESSION(c.sid, c.serial#, true);
        end loop;
    end;
    /