[Oracle] 隠しパラメーター確認方法と変更手順

こんにちは!土門大貴(daikidomon)です。

Oracle Databaseの隠しパラメータの確認方法と変更方法を紹介したいと思います。

隠しパラメータは通常方法「show parameter」や「v$parameter」では確認することが出来ません。

また変更時もちょっとしてコツがあるので、この記事を活用してみてください。

目次

隠しパラメータの表示

以下のSQLで隠しパラメータを表示することが出来ます。

set line 1000
set pagesize 100
col NAME for a40
col VALUE for a40
col DESCRIPTION for a120
select
a.KSPPINM AS PARAMETER,
b.KSPPSTVL AS VALUE,
a.KSPPDESC AS DESCRIPTION
from X$KSPPI a,
X$KSPPCV b
where a.INDX = b.indx
and a.KSPPINM like '<パラメータ名>';

今回は列に別名を付けています。

  • PARAMETER:隠しパラメータ名
  • VALUE:設定値
  • DESCRIPTION:隠しパラメータの内容

以下、実行例になります。

SQL> set line 1000

SQL> set pagesize 100

SQL> col PARAMETER for a40

SQL> col VALUE for a20

SQL> col DESCRIPTION for a60

SQL> select

  2      a.KSPPINM  AS PARAMETER,

  3      b.KSPPSTVL AS VALUE,

  4      a.KSPPDESC AS DESCRIPTION

  5   from X$KSPPI a,

  6        X$KSPPCV b

  7  where a.INDX = b.indx

  8    and a.KSPPINM like '_optim_peek_user_binds';

PARAMETER                                VALUE                DESCRIPTION

---------------------------------------- -------------------- ------------------------------------------------------------

_optim_peek_user_binds                   TRUE                 enable peeking of user binds

上記の例では、「_optim_peek_user_binds」の設定は「TRUE」になっています

隠しパラメータの変更:alter system

隠しパラメータを変更するには「alter system」文で行います。

alter system set <隠しパラメータ> = TRUE scope =  <MEMORY / SPFILE / BOTH> ;

隠しパラメータを変更するには「ダブルクォーテーション」で括らない

といけないので注意してください。

SQL> alter system set _optim_peek_user_binds = TRUE scope = both;

システムが変更されました。

Oracleの基本 ~データベース入門から設計/運用の初歩までposted with ヨメレバ

渡部 亮太,相川 潔,日比野 峻佑,岡野 平八郎,宮川 大地 技術評論社 2017-09-22

Amazonで探す

Kindleで探す

楽天ブックスで探す

楽天koboで探す

7netで探す

hontoで探す

e-honで探す

紀伊國屋書店で探す

よかったらシェアしてね!
  • URLをコピーしました!
目次