签到成功

知道了

CNDBA社区CNDBA社区

oracle查看隐藏参数

2022-04-21 11:42 1365 0 原创 oracle
作者: hbhe0316

1.可以通过如下方式查询当前实例的所有隐含参数:

col name for a30;
col value for a10;
select
x.ksppinm  name,
y.ksppstvl  value,
y.ksppstdf  isdefault,
decode(bitand(y.ksppstvf,7),1,'MODIFIED',4,'SYSTEM_MOD','FALSE')  ismod,
decode(bitand(y.ksppstvf,2),2,'TRUE','FALSE')  isadj
from
sys.x$ksppi x,
sys.x$ksppcv y
where
x.inst_id = userenv('Instance') and
y.inst_id = userenv('Instance') and
x.indx = y.indx 
order by
translate(x.ksppinm, ' _', ' ')
/

查询结果部分截图:

http://www.cndba.cn/hbhe0316/article/107942
http://www.cndba.cn/hbhe0316/article/107942

NAME       VALUE ISDEFAULT ISMOD      ISADJ
------------------------------ ---------- --------- ---------- -----
_xsolapi_use_olap_dml       TRUE TRUE    FALSE      FALSE
_xsolapi_use_olap_dml_for_rank TRUE  TRUE   FALSE      FALSE
_xtbuffer_size               0          TRUE    FALSE      FALSE

2.如果想查询某一个具体的隐含参数的值,只需要在上面原基础上加上 and x.ksppinm =’XXXXX’ 过滤。 http://www.cndba.cn/hbhe0316/article/107942

http://www.cndba.cn/hbhe0316/article/107942

例如查询 _optimizer_block_size 。http://www.cndba.cn/hbhe0316/article/107942http://www.cndba.cn/hbhe0316/article/107942

col name for a30;
col value for a10;
select
x.ksppinm  name,
y.ksppstvl  value,
y.ksppstdf  isdefault,
decode(bitand(y.ksppstvf,7),1,'MODIFIED',4,'SYSTEM_MOD','FALSE')  ismod,
decode(bitand(y.ksppstvf,2),2,'TRUE','FALSE')  isadj
from
sys.x$ksppi x,
sys.x$ksppcv y
where
x.inst_id = userenv('Instance') and
y.inst_id = userenv('Instance') and
x.indx = y.indx and x.ksppinm ='_optimizer_block_size'
order by
translate(x.ksppinm, ' _', ' ')
/
NAME                           VALUE      ISDEFAULT ISMOD      ISADJ
------------------------------ ---------- --------- ---------- -----
_optimizer_block_size          8192       TRUE      FALSE      FALSE
  1. 修改隐含参数方法:

这里列举一个修改DRM (有bug,易导致RAC 实例崩溃)隐含参数的例子。不同隐含参数的修改不同,具体需查看文档。

方法一:(可以重启的改法)

3.1 查看此隐含参数的值。 (这里不贴代码,请参照上面自行执行)

3.2 修改隐含参数的值。http://www.cndba.cn/hbhe0316/article/107942

SQL> alter system set "_gc_policy_time"=0 scope=spfile sid='*';
System altered.
SQL> alter system set "_gc_undo_affinity"=false scope=spfile sid='*';
System altered.

3.3 改完了之后,需要重启生效,查看。

http://www.cndba.cn/hbhe0316/article/107942
http://www.cndba.cn/hbhe0316/article/107942

方法二 (不能重启)http://www.cndba.cn/hbhe0316/article/107942

如果暂时无法重启实例,可以使用如下命令“事实上”禁用DRM:(以下两个参数可以动态调整)

alter system set "_gc_affinity_limit"=10000000;
alter system set "_gc_affinity_minimum"=10000000;

版权声明:本文为博主原创文章,未经博主允许不得转载。

oracle

用户评论
* 以下用户言论只代表其个人观点,不代表CNDBA社区的观点或立场
hbhe0316

hbhe0316

关注

1.只有承认无知,才能装下新的东西; 2.进步来自一点点滴滴的积累; 3.广博让你更优秀,而专业让你无法替代; 4.挫折和失败能够转换为一种财富。

  • 889
    原创
  • 1
    翻译
  • 13
    转载
  • 24
    评论
  • 访问:1152127次
  • 积分:1523
  • 等级:核心会员
  • 排名:第6名
精华文章
    最新问题
    查看更多+
    热门文章
      热门用户
      推荐用户
        Copyright © 2016 All Rights Reserved. Powered by CNDBA · 皖ICP备2022006297号-1·

        QQ交流群

        注册联系QQ