关于调节sga一些大小

发布时间:2020-06-30 17:52:56 作者:王睿操
来源:网络 阅读:643

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

SQL> alter system set sga_target=600 scope=both;
alter system set sga_target=600 scope=both
*
ERROR at line 1:
ORA-02097: parameter cannot be modified because specified value is invalid
ORA-00827: could not shrink sga_target to specified value

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

SQL> show parameter sga

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
lock_sga                             boolean     FALSE
pre_page_sga                         boolean     FALSE
sga_max_size                         big integer 600M
sga_target                           big integer 600M
SQL> show parameter memory

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
hi_shared_memory_address             integer     0
memory_max_target                    big integer 0
memory_target                        big integer 0
shared_memory_address                integer     0

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

SQL> alter system set sga_target=700 scope=spfile;

System altered

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

SQL> alter system set sga_target=400M scope=both;

System altered.

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

推荐阅读:
  1. oracle 更改 sga+pga 大小
  2. .ASM实例的SGA ,查看所有ASM文件大小

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

oracle

上一篇:如何删除php中字符串前的空格

下一篇:Redis集群进行故障检测的方法

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》