yangtingkun
===========================================================
设置MEMORY_TARGET会导致RESULT_CACHE_MAX_SIZE在重启后归零
===========================================================

Oracle11g中,如果设置了MEMORY_TARGET,则RESULT_CACHE_MAX_SIZE的设置在数据库重启后自动被置为0


问题再现:

SQL> alter system set memory_target = 220m scope = spfile;

System altered.

SQL> alter system set result_cache_max_size = 10m scope = spfile;

System altered.

SQL> shutdown immediate
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL> startup
ORACLE instance started.

Total System Global Area 209235968 bytes
Fixed Size 1298920 bytes
Variable Size 192941592 bytes
Database Buffers 12582912 bytes
Redo Buffers 2412544 bytes
Database mounted.
Database opened.
SQL> show parameter memory_target

NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
memory_target big integer 220M
SQL> show parameter result_cache_max_size

NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
result_cache_max_size big integer 0
SQL> alter system set result_cache_max_size = 10m scope = both;

System altered.

SQL> show parameter result_cache_max_size

NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
result_cache_max_size big integer 0
SQL> select * from v$version;

BANNER
--------------------------------------------------------------------------------
Oracle Database 11g Enterprise Edition Release 11.1.0.6.0 -
Production PL/SQL Release 11.1.0.6.0 - Production
CORE 11.1.0.6.0 Production
TNS for Linux: Version 11.1.0.6.0 - Production
NLSRTL Version 11.1.0.6.0 - Production

如果不设置MEMORY_TARGET而使用SGA_TARGETPGA_AGGREGATE_TARGET,则不会导致RESULT_CACHE_MAX_SIZE被置为0值:

SQL> alter system reset memory_target scope = spfile sid = '*';

System altered.

SQL> alter system reset memory_max_target scope = spfile sid = '*';

System altered.

SQL> alter system set sga_target = 170m scope = spfile;

System altered.

SQL> alter system set pga_aggregate_target = 50m scope = spfile;

System altered.

SQL> alter system set result_cache_max_size = 10m scope = spfile;

System altered.

SQL> shutdown immediate
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL> startup
ORACLE instance started.

Total System Global Area 209235968 bytes
Fixed Size 1298920 bytes
Variable Size 150998552 bytes
Database Buffers 54525952 bytes
Redo Buffers 2412544 bytes
Database mounted.
Database opened.
SQL> show parameter result_cache_max_size

NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
result_cache_max_size big integer 10M
SQL> alter system set result_cache_max_size = 20m;

System altered.

SQL> show parameter result_cache_max_size

NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
result_cache_max_size big integer 20M

不使用MEMORY_TARGET方式设置内存参数,则RESULT_CACHE_MAX_SIZE参数设置正常。

这个bugmetalink上还没有详细的描述。

yangtingkun 发表于:2007.10.15 23:17 ::分类: ( ORACLE , Bug ) ::阅读:(770次) :: 评论 (7)
re: 设置MEMORY_TARGET会导致RESULT_CACHE_MAX_SIZE在重启后归零 [回复]

杨兄,有点事情想您联系,方便给我发个邮件吗?daqulaman@gmail.com

或者你留个E-Mail给我,非常感谢

小邹 评论于: 2007.10.16 14:41
re: 设置MEMORY_TARGET会导致RESULT_CACHE_MAX_SIZE在重启后归零 [回复]

杨兄,metalink上说是Install Oracle Enterprise Edition if this feature is needed.这样来解决。

Ricky 评论于: 2008.02.18 15:56
re: 设置MEMORY_TARGET会导致RESULT_CACHE_MAX_SIZE在重启后归零 [回复]

上面V$VERSION中不是已经显示了,当前就是企业版啊

yangtingkun 评论于: 2008.02.19 09:13
re: 设置MEMORY_TARGET会导致RESULT_CACHE_MAX_SIZE在重启后归零 [回复]

我的企业版倒是没遇到这个问题,
前面装了个人版发现怎么也不能设置result_cache_max_size,查metalink才发现是版本的问题。

ricky 评论于: 2008.02.20 17:22
re: 设置MEMORY_TARGET会导致RESULT_CACHE_MAX_SIZE在重启后归零 [回复]

不妨把你测试没有问题的步骤贴一下看看

另外,具体的数据库版本和平台信息是什么?

yangtingkun 评论于: 2008.02.21 10:36
re: 设置MEMORY_TARGET会导致RESULT_CACHE_MAX_SIZE在重启后归零 [回复]

平台vmware下oracle版linux el5
[oracle@Ricky ~]$ uname -a
Linux Ricky 2.6.18-53.el5 #1 SMP Sat Nov 10 18:24:52 EST 2007 i686 i686 i386 GNU/Linux

[oracle@Ricky ~]$ sqlplus / as sysdba

SQL*Plus: Release 11.1.0.6.0 - Production on Thu Feb 21 11:28:40 2008

Copyright (c) 1982, 2007, Oracle. All rights reserved.

Connected to an idle instance.

SQL> startup
ORACLE instance started.

Total System Global Area 414298112 bytes
Fixed Size 1300296 bytes
Variable Size 297797816 bytes
Database Buffers 109051904 bytes
Redo Buffers 6148096 bytes
Database mounted.
Database opened.
SQL> select * from v$version;

BANNER
--------------------------------------------------------------------------------
Oracle Database 11g Enterprise Edition Release 11.1.0.6.0 - Production
PL/SQL Release 11.1.0.6.0 - Production
CORE 11.1.0.6.0 Production
TNS for Linux: Version 11.1.0.6.0 - Production
NLSRTL Version 11.1.0.6.0 - Production

SQL> sho parameter memory

NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
hi_shared_memory_address integer 0
memory_max_target big integer 396M
memory_target big integer 396M
shared_memory_address integer 0
SQL> sho parameter target

NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
archive_lag_target integer 0
db_flashback_retention_target integer 1440
fast_start_io_target integer 0
fast_start_mttr_target integer 0
memory_max_target big integer 396M
memory_target big integer 396M
pga_aggregate_target big integer 0
sga_target big integer 0

SQL> sho parameter result_cache

NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
client_result_cache_lag big integer 3000
client_result_cache_size big integer 0
result_cache_max_result integer 5
result_cache_max_size big integer 2080K
result_cache_mode string MANUAL
result_cache_remote_expiration integer 0
SQL> alter system set result_cache_max_size=10m scope=both;

System altered.

SQL> sho parameter result_cache

NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
client_result_cache_lag big integer 3000
client_result_cache_size big integer 0
result_cache_max_result integer 5
result_cache_max_size big integer 10M
result_cache_mode string MANUAL
result_cache_remote_expiration integer 0
SQL> sho parameter target

NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
archive_lag_target integer 0
db_flashback_retention_target integer 1440
fast_start_io_target integer 0
fast_start_mttr_target integer 0
memory_max_target big integer 396M
memory_target big integer 396M
pga_aggregate_target big integer 0
sga_target big integer 0
SQL> shutdown immediate;
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL> startup
ORACLE instance started.

Total System Global Area 414298112 bytes
Fixed Size 1300296 bytes
Variable Size 297797816 bytes
Database Buffers 109051904 bytes
Redo Buffers 6148096 bytes
Database mounted.
Database opened.
SQL> sho parameter target

NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
archive_lag_target integer 0
db_flashback_retention_target integer 1440
fast_start_io_target integer 0
fast_start_mttr_target integer 0
memory_max_target big integer 396M
memory_target big integer 396M
pga_aggregate_target big integer 0
sga_target big integer 0
SQL> sho parameter result_cache

NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
client_result_cache_lag big integer 3000
client_result_cache_size big integer 0
result_cache_max_result integer 5
result_cache_max_size big integer 10M
result_cache_mode string MANUAL
result_cache_remote_expiration integer 0

Ricky 评论于: 2008.02.21 11:44
re: 设置MEMORY_TARGET会导致RESULT_CACHE_MAX_SIZE在重启后归零 [回复]

奇怪,平台和数据库版本都一直,怎么会结果不一样。
难道和内存的值设置大小有关,有时间我再测试一下

yangtingkun 评论于: 2008.02.21 13:37

发表评论
标题

在此添加评论
表情符号: smile laughing tongue angry crying sad wassat wink

称呼

邮箱地址(可选)

个人主页(可选)

 authimage


切换风格
新闻聚合
博客日历
文章归档...
最新发表...
最新评论...
最多阅读文章...
最多评论文章...
博客统计...
Blog信息
网站链接...