加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

关于调节sga一些大小

发布时间:2020-12-12 15:49:27 所属栏目:百科 来源:网络整理
导读:今天在调节sga大小的时候遇到了一个报错 SQLaltersystemsetsga_target=600scope=both;altersystemsetsga_target=600scope=both*ERRORatline1:ORA-02097:parametercannotbemodifiedbecausespecifiedvalueisinvalidORA-00827:couldnotshrinksga_targettospecif

今天在调节sga大小的时候遇到了一个报错

SQL>altersystemsetsga_target=600scope=both;
altersystemsetsga_target=600scope=both
*
ERRORatline1:
ORA-02097:parametercannotbemodifiedbecausespecifiedvalueisinvalid
ORA-00827:couldnotshrinksga_targettospecifiedvalue

首先看一下数据库相关配置

SQL>showparametersga

NAMETYPEVALUE
-----------------------------------------------------------------------------
lock_sgabooleanFALSE
pre_page_sgabooleanFALSE
sga_max_sizebiginteger600M
sga_targetbiginteger600M
SQL>showparametermemory

NAMETYPEVALUE
-----------------------------------------------------------------------------
hi_shared_memory_addressinteger0
memory_max_targetbiginteger0
memory_targetbiginteger0
shared_memory_addressinteger0

很明显可以看出来这是一个asmm下的oracle,难道之前不能调节是因为动态或者静态的关系,然后做了以下实验

SQL>altersystemsetsga_target=700scope=spfile;

Systemaltered

结果发现果然是只可以在spfile中修改,重启后生效,可是后来我继续做实验发现一个很有趣的事情

SQL>altersystemsetsga_target=400Mscope=both;

Systemaltered.

这是为什么呢,为什么这个sga现在又可以在both里面可以用了呢,查阅文档发现一个原来10g之前是不可以调节sga_target的大小的,但是之后出现了一个参数sga_max_size,这个参数让sga_target可以真正的自己调节,只要在sga_max_size以下,所有的sga_target是可以静态或者动态自动调节的。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读