V$SPPARAMETER 뷰

2023. 4. 3.·Oracle/Administration

V$SPPARAMETER 뷰는 SPFILE(Server Parameter File)의 내용을 표시합니다.

V$SPPARAMETER displays information about the contents of the server parameter file. If a server parameter file was not used to start the instance, then each row of the view will contain FALSE in the ISSPECIFIED column.

 

아래는 Real Application Clusters Administration and Deployment Guide의 Setting SPFILE Parameter Values for Oracle RAC 항목의 SPFILE에 대한 설명입니다. V$SPPARAMETER 뷰의 sid 칼럼은 마침표(.) 앞의 값을 표시합니다.

The value before the period (.) in an SPFILE entry identifies the instance to which the particular parameter value belongs. When an asterisk (*) precedes the period, the value is applied to all instances that do not have a subsequent, individual value listed in the SPFILE.

 

아래는 GV$PARAMETER 뷰와 V$SPPARAMETER 뷰에서 optimizer_dynamic_sampling 파라미터를 검색한 결과입니다. V$SPPARAMETER 뷰는 기본 값인 파라미터에 대해 sid를 *, value를 널로 표시합니다.

-- 1-1
SELECT inst_id, name, value FROM gv$parameter WHERE name = 'optimizer_dynamic_sampling';

INST_ID NAME                       VALUE
------- -------------------------- -----
      1 optimizer_dynamic_sampling 2
      2 optimizer_dynamic_sampling 2

2 행이 선택되었습니다.

-- 1-2
SELECT sid, name, value, ordinal FROM v$spparameter WHERE name = 'optimizer_dynamic_sampling';

SID NAME                       VALUE ORDINAL
--- -------------------------- ----- -------
*   optimizer_dynamic_sampling             0

1개의 행이 선택되었습니다.

 

db1 인스턴스의 optimizer_dynamic_sampling 파라미터를 1로 설정하면 V$SPPARAMETER 뷰는 sid가 db1인 로우만 반환합니다. 이 상태에서 1, 2번 인스턴스를 재기동하면 optimizer_dynamic_sampling 파라미터 값이 1번 인스턴스는 1, 2번 인스턴스는 기본값인 2로 설정됩니다.

-- 2-1
ALTER SYSTEM SET optimizer_dynamic_sampling = 1 SCOPE = BOTH SID = 'db1';

시스템이 변경되었습니다.

-- 2-2
SELECT inst_id, name, value FROM gv$parameter WHERE name = 'optimizer_dynamic_sampling';

INST_ID NAME                       VALUE
------- -------------------------- -----
      1 optimizer_dynamic_sampling 1
      2 optimizer_dynamic_sampling 2

2 행이 선택되었습니다.

-- 2-3
SELECT sid, name, value, ordinal FROM v$spparameter WHERE name = 'optimizer_dynamic_sampling';

SID NAME                       VALUE ORDINAL
--- -------------------------- ----- -------
db1 optimizer_dynamic_sampling 1           1

1개의 행이 선택되었습니다.

 

sid를 *로 지정해 전체 인스턴스의 optimizer_dynamic_sampling 파라미터를 3로 설정하면 V$SPPARAMETER 뷰는 sid가 db1인 로우와 sid가 *인 로우를 함께 반환합니다. 이 상태에서 1, 2번 인스턴스를 재기동하면 optimizer_dynamic_sampling 파라미터 값이 1번 인스턴스는 1, 2번 인스턴스는 3으로 설정됩니다.

-- 3-1
ALTER SYSTEM SET optimizer_dynamic_sampling = 3 SCOPE = BOTH SID = '*';

시스템이 변경되었습니다.

-- 3-2
SELECT inst_id, name, value FROM gv$parameter WHERE name = 'optimizer_dynamic_sampling';

INST_ID NAME                       VALUE
------- -------------------------- -----
      1 optimizer_dynamic_sampling 3
      2 optimizer_dynamic_sampling 3

2 행이 선택되었습니다.

-- 3-3
SELECT sid, name, value, ordinal FROM v$spparameter WHERE name = 'optimizer_dynamic_sampling';

SID NAME                       VALUE ORDINAL
--- -------------------------- ----- -------
db1 optimizer_dynamic_sampling 1           1
*   optimizer_dynamic_sampling 3           1

2 행이 선택되었습니다.

 

db1 인스턴스의 optimizer_dynamic_sampling 파라미터를 reset하면 V$SPPARAMETER 뷰는 sid가 *인 로우만 반환합니다. 이 상태에서 1, 2번 인스턴스를 재기동하면 optimizer_dynamic_sampling 파라미터 값이 1, 2번 인스턴스 모두 1로 설정됩니다.

-- 4-1
ALTER SYSTEM RESET optimizer_dynamic_sampling SCOPE = BOTH SID = 'db1';

시스템이 변경되었습니다.

-- 4-2
SELECT inst_id, name, value FROM gv$parameter WHERE name = 'optimizer_dynamic_sampling';

INST_ID NAME                       VALUE
------- -------------------------- -----
      1 optimizer_dynamic_sampling 2
      2 optimizer_dynamic_sampling 3

2 행이 선택되었습니다.

-- 4-3
SELECT sid, name, value, ordinal FROM v$spparameter WHERE name = 'optimizer_dynamic_sampling';

SID NAME                       VALUE ORDINAL
--- -------------------------- ----- -------
*   optimizer_dynamic_sampling 3           1

1개의 행이 선택되었습니다.

 

전체 인스턴스의 optimizer_dynamic_sampling 파라미터를 reset하면 V$SPPARAMETER 뷰는 sid가 *, value가 널인 로우를 반환합니다. 이 상태에서 1, 2번 인스턴스를 재기동하면 optimizer_dynamic_sampling 파라미터가 1, 2번 인스턴스 모두 기본값인 2로 설정됩니다.

-- 5-1
ALTER SYSTEM RESET optimizer_dynamic_sampling SCOPE = BOTH;

시스템이 변경되었습니다.

-- 5-2
SELECT inst_id, name, value FROM gv$parameter WHERE name = 'optimizer_dynamic_sampling';

INST_ID NAME                       VALUE
------- -------------------------- -----
      1 optimizer_dynamic_sampling 2
      2 optimizer_dynamic_sampling 2

2 행이 선택되었습니다.

-- 5-3
SELECT sid, name, value, ordinal FROM v$spparameter WHERE name = 'optimizer_dynamic_sampling';

SID NAME                       VALUE ORDINAL
--- -------------------------- ----- -------
*   optimizer_dynamic_sampling             0

1개의 행이 선택되었습니다.
저작자표시 비영리 변경금지 (새창열림)
'Oracle/Administration' 카테고리의 다른 글
  • 오브젝트 ID
  • SCAN과 LOAD_BALANCE에 대한 접속 테스트
  • V$PARAMETER2 뷰
  • crsctl stat res -t 노드 번호 호스트명 불일치
정희락
정희락
2007년부터 Oracle Database 성능 최적화에 관심을 가져왔습니다. 현재 한국오라클 Engineered Systems Solution Engineering 팀에서 Solution Engineer로 근무하고 있습니다. 이 블로그는 개인적인 연구 목적으로 운영되며 Oracle 사의 공식적인 입장을 대변하지 않습니다.
  • 정희락
    TunA
    정희락
  • 전체
    오늘
    어제
    • 분류 전체보기 (204)
      • Oracle (176)
        • SQL (36)
        • PLSQL (10)
        • Performance (74)
        • Administration (37)
        • Installation (3)
        • Utilities (1)
        • JSON (8)
        • Vector (7)
      • Exadata (15)
      • SQL*Plus (2)
      • Linux (5)
      • Resources (6)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 도서

    • 불친절한 SQL 프로그래밍
    • 불친절한 PL/SQL 프로그래밍
  • 링크

    • Connor McDonald
    • Frits Hoogland
    • Jonathan Lewis
    • Julian Dontcheff
    • Julian Dyke
    • Kun Sun
    • Maria Colgan
    • Martin Bach
    • Mike Dietrich
    • Tanel Poder
  • 공지사항

  • 인기 글

  • 태그

    12c
    19c
    21c
    23ai
    case study
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
정희락
V$SPPARAMETER 뷰
상단으로

티스토리툴바