RSS订阅
RSS订阅TT数据库

Oracle 11g新特性之Auto Memory Management

2008-7-31  选择字号:  | |
打印本文章

导读:Auto Memory Management是Oracle 10g提出来的一个新特性,在最新的Oracle 11g数据库中又得到了进一步的发展。通过使用自动内存管理,Oracle数据库中的PGA和SGA内存……

关键词:Oracle11g Oracle11g新特性 Auto Memory Management

正在加载数据...

  Auto Memory Management是Oracle 10g提出来的一个新特性,在最新的Oracle 11g数据库中又得到了进一步的发展。通过使用自动内存管理,Oracle数据库中的PGA和SGA内存之间可以互相转换,根据当前的工作负载来自动设定Oracle内存区域中的PGA和SGA的大小。这种间接的内存转换依赖于操作系统的共享内存的释放机制来获得内部实例的调优。目前这种技术可以应用于Linux, Solaris, HPUX, AIX 和Windows等操作系统上。

  首先我们来回顾下Oracle10g的自动内存管理特性。在Oracle10g的数据库中,只有SHARED_POOL_SIZE、DB_CACHE_SIZE、LARGE_POOL_SIZE、JAVA_POOL_SIZE、STREAMS_POOL_SIZE五个SGA组件可以被自动调整,其中PGA的最大值由初始化参数PGA_AGGREGATE_TARGET决定,SGA的最大值由初始化参数SGA_TARGET决定。

  在Oracle11g数据库中,使用自动内存管理特性不再需要设定参数PGA_AGGREGATE_TARGET和SGA_TARGET,因为这两个参数都已经被修改成自动调优的,除非想指定PGA和SGA的最小值才需要设定这两个参数。在Oracle11g数据库中,则需要设置一个叫做MEMORY_TARGET的初始化参数,这个参数是指整个Oracle实例所能使用的内存大小,包括PGA和SGA的整体大小,在MEMORY_TARGET的内存大小之内,PGA和SGA所用的内存可以根据当前负载情况自动相互转换。如果当初始设定的MEMORY_TARGET的内存不够当前数据库使用的时候,Oracle11g还提供了另外一个初始化参数MEMORY_MAX_TARGET,当原始设定的内存不够使用的时候,可以手工来动态 调节MEMORY_TARGET的大小,但是不允许超过MEMORY_MAX_TARGET的值。

  Oracle 11g新特性之Auto Memory Management

  此外,Oracle11g数据库还提供了几个用于监控自动内存管理的视图

  V$MEMORY_DYNAMIC_COMPONENTS:描述当前所有内存组件的状态

  V$MEMORY_RESIZE_OPS:循环记录最后800次的SGA大小调整请求

  X$KMGSTFR:循环记录最后800次的SGA的转换地址

  _MEMORY_MANAGEMENT_TRACING=23:对于所有的内存转换调整行为均记录保存为跟踪文件

原文出处:http://oracle.chinaitlab.com/optimize/756809.html
来源:中国IT实验室    作者:allan    
相关的专家答疑
为什么要使用DECODE函数来减少处理时间?如果你有简单无关联的数据库应该怎么处理?如何删除重复记录?
如何选择适合的Oracle优化器?访问Table的方式有哪些?共享的SQL语句必须符合那些条件?作者在本文中详细介绍了这些方面的内容。
在外键列上有索引吗?本文主要介绍辅助表上更多的内容。输出内容意味着什么?你可以立即判断出这样一个事实,不是所有表上都有主键,有15个表,但这里只返回了14行……
关于顾问工具你有多种选择,理解它们是做什么的,如果你没有工作在生产或开发环境中你使用它们做什么?可能仅仅是喜欢,即使你处于一个开发环境,但你可能也没有……
假设你在下面的两个查询中做一个选择(再次使用HR方案):查询1和……,但是这些查询的查询结果集一致吗?如果它们是一致的,你能预计在它们的执行计划中有什么不同吗?

本专题介绍了SQL Server服务代理相关方面的知识,包括SQL Server服务代理基础知识的概述、消息类型、契约、队列、服务和路由、SEND命令和RECEIVE命令、性能方面的改进以及对运行状况的监控等等。

无论你是否计划将SQL Server数据库转换服务(DTS)包迁移到SQL Server集成服务(SSIS)或在SQL Server 2005里运行DTS包,都需要专家的一些建议。这一指南主要是包括SSIS的相关基础知识、技巧帮助你进行SSIS调整,还介绍了SSIS有经验的一些用户的具体信息等等。

子查询是一个嵌套在SELECT、INSERT、UPDATE 或DELETE语句,或者另一个子查询里的查询。一个子查询可以返回一行或多行结果给父查询。标量子查询是只返回一个值的查询:只有一个字段的一行记录。标量子查询可以在SQL语句的大多数位置,其中你可以使用一个表达式或一个实际值。
最新更新
专家答疑
技巧
Michael Hillenbrand
你能解释一下数据库公程师、数据库架构师以及数据库管理员之间有什么区别吗?数据库管理员:这是目前最普遍使用的对从事数据库相关的工作的人的头衔。数据库管理员是指……
Brian Peasland
对5GB大小的Oracle 7.3存档或删除的最佳办法是什么?为了便于管理机构查询,这些数据至少需要再用20年的时间。我们担心将来我们不能对它重新获取并迁入一个更新的……
Rudy Limeback
如何创建一个约束限制2007年1月1日之前的日期被录入?用CHECK约束就可以。如下面的示例……