Oracle体系结构及备份(十)——sga-others_pool

一 其他池(Java池、流池)

 

        Java池,也是系统全局区中一个可选内存区,用于Java程序的解释和执行,大小由参数JAVA_POOL_SIZE决定,也可以动态调整。如果granule是4M,Java池默认是24M;如果granule是16M,默认大小是32M。如果在数据库创建时选择了安装JVM组件,那么这个池必须配置。

 

        Java Pool

        Java pool memoryis used in server memory for all session-specific Java code and data within theJVM. Java pool memory is used in different ways, depending on the mode in whichOracle Database is running.

 

        The Java PoolAdvisor statistics provide information about library cache memory used for Javaand predict how changes in the size of the Java pool can affect the parse rate.The Java Pool Advisor is internally turned on when statistics_level is set toTYPICAL or higher. These statistics reset when the advisor is turned off.

 

        Streams Pool

        The streams poolis used exclusively by Oracle Streams. The Streams pool stores buffered queuemessages, and it provides memory for Oracle Streams capture processes and applyprocesses.

 

        Unless youspecifically configure it, the size of the Streams pool starts at zero. Thepool size grows dynamically as needed when Oracle Streams is used.

 

二 操作示例

 

SQL> show parameter java_pool_size;



NAME				     TYPE	 VALUE

------------------------------------ ----------- ------------------------------

java_pool_size			     big integer 0

SQL> show parameter streams_pool_size;



NAME				     TYPE	 VALUE

------------------------------------ ----------- ------------------------------

streams_pool_size		     big integer 0

SQL> SELECT name, bytes/1024/1024 MB, resizeable from v$sgainfo;



NAME					 MB RES

-------------------------------- ---------- ---

Fixed SGA Size			 1.16557312 No

Redo Buffers			 2.83203125 No

Buffer Cache Size			 88 Yes

Shared Pool Size			 52 Yes

Large Pool Size 			 12 Yes

Java Pool Size				  4 Yes

Streams Pool Size			  0 Yes

Granule Size				  4 No

Maximum SGA Size			800 No

Startup overhead in Shared Pool 	 36 No

Free SGA Memory Available		640



11 rows selected.

--Java池,否则占用共享池一般设置成24M或者32M

SQL> alter system set java_pool_size=24M;



System altered.



SQL> alter system set streams_pool_size=12M;



System altered.



SQL> show parameter java_pool_size;



NAME				     TYPE	 VALUE

------------------------------------ ----------- ------------------------------

java_pool_size			     big integer 24M

--10.2开始的版本流池才开始自动管理

--粒度4M,设置成24M,粒度为16M,设置成32M

SQL> show parameter streams_pool_size;



NAME				     TYPE	 VALUE

------------------------------------ ----------- ------------------------------

streams_pool_size		     big integer 12M

--sga中除了log buffer不能被自动管理,需要单独设置大小,其他的比如--shared_pool_size、db_cahe_size、large_pool_size、java_pool_size、--streams_pool_size都可被自动管理,这些池需要设置初始大小。流池在10G R2中自动管理

--sga分配:

--1.sga_max_size=内存大小的80% * 2/3

 

 


三 总结

 

 

        1.Java池,也是系统全局区中一个可选内存区,用于Java程序的解释和执行,大小由参数JAVA_POOL_SIZE决定,也可以动态调整。

        2.其他池包括Java池和Streams池。

        3.可以通过参数java_pool_size 和streams_pool_size查看Java池和流池的大小。


我的邮箱[email protected]  新浪微博@Wentasy27

  微信公众平台:JustOracle(微信号:justoracle)

  IT交流群:336882565(加群时验证 From CSDN XXX)

  Oracle交流讨论组https://groups.google.com/d/forum/justoracle

  By Larry Wen


katoon Sina CSDN
@Wentasy 博文仅供参考,欢迎大家来访。如有错误之处,希望批评指正。原创博文如需转载请注明出处,谢谢 :) [CSDN博客]

你可能感兴趣的:(oracle)