刚刚安装的oracle11g,修改memory_target不受memory_max_target限制

刚刚创建好的数据库
SQL> startup
ORACLE 例程已经启动。

Total System Global Area 2137886720 bytes
Fixed Size                  2177456 bytes
Variable Size            1241515600 bytes
Database Buffers          889192448 bytes
Redo Buffers                5001216 bytes
数据库装载完毕。
数据库已经打开。
SQL> show parameter memory

NAME                                 TYPE        VALUE
------------------------------------ ----------- ---------
hi_shared_memory_address             integer     0
memory_max_target                    big integer 2G
memory_target                        big integer 2G
shared_memory_address                integer     0
SQL> alter system set memory_target=2100m scope=spfile;

系统已更改。

SQL> shutdowm immediate;
数据库已经关闭。
已经卸载数据库。
ORACLE 例程已经关闭。
SQL> startup
ORACLE 例程已经启动。

很奇怪,启动的时候没有受memory_max_target限制而报错,而且memory_max_target也修改了

Total System Global Area 2204696576 bytes
Fixed Size                  2177616 bytes
Variable Size            1308624304 bytes
Database Buffers          889192448 bytes
Redo Buffers                4702208 bytes
数据库装载完毕。
数据库已经打开。
SQL> show parameter memory

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

修改memory_max_target参数
SQL> alter system set memory_max_target=2200m scope=spfile;

系统已更改。

SQL> shutdown immediate;
数据库已经关闭。
已经卸载数据库。
ORACLE 例程已经关闭。
SQL> startup
ORACLE 例程已经启动。

Total System Global Area 2304909312 bytes
Fixed Size                  2177856 bytes
Variable Size            1409287360 bytes
Database Buffers          872415232 bytes
Redo Buffers               21028864 bytes
数据库装载完毕。
数据库已经打开。
SQL> show parameter memory

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
hi_shared_memory_address             integer     0
memory_max_target                    big integer 2208M
memory_target                        big integer 2112M
shared_memory_address                integer     0
SQL> alter system set memory_target=2230m scope=spfile;

系统已更改。

SQL> shutdown immediate;
数据库已经关闭。
已经卸载数据库。
ORACLE 例程已经关闭。
SQL> startup
ORA-00837: Specified value of MEMORY_TARGET greater than MEMORY_MAX_TARGET

这次报错了,为什么第一次修改memory_target并且超过了memory_max_target的大小但是却没有报错呢?
标签: 暂无标签
zhaojingyuo

写了 14 篇文章,拥有财富 332,被 3 人关注

转播转播 分享分享 分享淘帖
回复

使用道具

P4 | 发表于 2012-6-24 12:54:53
鄙视自己一下!
还原之前的spfile之后,也就是数据库刚刚建立时的spfile,查询v$spparameter发现memory_max_target这个值暂时没有值,这应该也是修改memory_target不受控制的原因吧。
SQL> col value for a30
SQL> col name for a30
SQL> select name,value from v$spparameter where name like '%memory_%';

NAME                           VALUE
------------------------------ ------------------------------
shared_memory_address
hi_shared_memory_address
memory_target                  2147483648
memory_max_target
回复

使用道具

P6 | 发表于 2012-6-26 10:30:04
哈哈,神奇的人啊,拍你一砖
回复

使用道具

您需要登录后才可以回帖 登录 | 加入社区

本版积分规则

意见
反馈