21дек
Как посмотреть на все ( недокументированные в том числе ) параметры инициализации?
Для ORA10g попробуйте вот так:
select KSPPINM,KSPPDESC,KSPPSTVL,KSPPSTDVL,KSPPSTDF from X$KSPPSV a, x$ksppi b
where a.indx=b.indx order by 1
А еще можно представление создать. Код был предоставлен доброй душой (сейчас не могу вспомнить кем именно) на sql.ru
CREATE OR REPLACE VIEW all_parameters (
num,
name,
type,
value,
isdefault,
isses_modifiable,
issys_modifiable,
ismodified,
isadjusted,
description,
update_comment )
AS
select x.indx+1,ksppinm,ksppity,ksppstvl,ksppstdf,
decode(bitand(ksppiflg/256,1),1,'TRUE','FALSE'),
decode(bitand(ksppiflg/65536,3),1,'IMMEDIATE',2, 'DEFERRED',
3,'IMMEDIATE','FALSE'),
decode(bitand(ksppstvf,7),1,'MODIFIED',4,'SYSTEM_MOD','FALSE'),
decode(bitand(ksppstvf,2),2,'TRUE','FALSE'), ksppdesc, ksppstcmnt
from x$ksppi x, x$ksppcv y where (x.indx = y.indx)
Можно еще посмотреть у Бурлесона здесь очень хорошие запросы:
select
ksppinm parm_name,
session_tab.ksppstvl current_val,
instance_tab.ksppstvl default_val,
ksppdesc descr
from
x$ksppi parm_tab,
x$ksppcv session_tab,
x$ksppsv instance_tab
where
parm_tab.indx = session_tab.indx
and
session_tab.indx = instance_tab.indx
and
substr(parm_tab.ksppinm,1,1) = '_'
and
-- remove rows where hidden parm is the same as v$ parm
not exists
(select name from v$parameter
where
name = substr(ksppinm,2,length(ksppinm))
)
order by
ksppinm
;
select
ksppinm parm_name,
session_tab.ksppstvl current_val,
instance_tab.ksppstvl default_val,
ksppdesc descr
from
x$ksppi parm_tab,
x$ksppcv session_tab,
x$ksppsv instance_tab
where
parm_tab.indx = session_tab.indx
and
session_tab.indx = instance_tab.indx
and
substr(parm_tab.ksppinm,1,1) = '_'
and
-- remove rows where hidden parm is the same as v$ parm
not exists
(select name from v$parameter
where
name = substr(ksppinm,2,length(ksppinm))
)
and
(
ksppinm like '%enqueue%'
or
ksppdesc like '%lock%'
or
ksppinm like '%locks%'
or
ksppinm like '%dml%'
)
order by
ksppinm
;
select
ksppinm parm_name,
session_tab.ksppstvl current_val,
instance_tab.ksppstvl default_val,
ksppdesc descr
from
x$ksppi parm_tab,
x$ksppcv session_tab,
x$ksppsv instance_tab
where
parm_tab.indx = session_tab.indx
and
session_tab.indx = instance_tab.indx
and
substr(parm_tab.ksppinm,1,1) = '_'
and
-- remove rows where hidden parm is the same as v$ parm
not exists
(select name from v$parameter
where
name = substr(ksppinm,2,length(ksppinm))
)
and
(
ksppinm like '%walk%'
or
ksppdesc like '%freelist%'
or
ksppinm like '%insert%'
or
ksppinm like '%dml%'
)
order by
ksppinm
;