`
liwenshui322
  • 浏览: 519066 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

oracle内存结构(第三节:自动PGA内存管理)

阅读更多

     上一篇是补昨天的,今天我们来看看PGA的自动管理。

     上一节我们看到了,我们可以通过设置sort_area_size来确定用户的排序区的大小。这个时候有一个问题,假设sort_area_size为2M,总共可用内存为1G。现在并发用户为10个,最多的时候只是用了20M,并没有充分利用内存。如果一个用户在排序的时候最多需要用5M的空间,你却把sort_area_size设置为2M,会影响性能。最冤枉的是我明明还有很多内存是空着的,没有用!但是如果并发用户达到1000个的时候,每个用户分配2M那是不可能的,可能在第700个用户进来之后,内存就消耗尽了!但是有的用户可能此时此刻没有使用2M的排序区,只使用了其中的1M,那么我们是不是可以动态地分配一下呢?这就是自动PGA内存管理,这个是oracle 9i release 1之后才支持。

     有两个参数可以设置: workarea_size_policy:工作区内存管理机制:auto :自动管理  manual:手动管理。默认auto。我们一般不修改

      pga_aggregate_target:限制oracle用来进行数据排序的所有工作区总共内存是多少,不是一个硬性的限制,应该说是一个请求或者说是建议。假设这个值为500M  现在10个用户,它就会给每个用户分配多一点,假设10M。但是如果并发100个用户,他可能就给每一个用户分配4M的空间了。这个是动态变化的!但是有一个最小的值,不能无限缩小。当缩小到不能再小的时候,如果再增加用户,那么总内存就会超过500M。再继续增加用户,总内存可能会达到700M,如果有足够的内存的话!

 

参考书籍:oracle9i&10g编程艺术

 

分享到:
评论

相关推荐

    oracle自动内存管理

    通过AMM,Oracle能够根据系统负载动态调整共享池、缓冲区缓存和其他内存结构的大小,从而提高数据库性能并降低管理复杂度。 #### 二、自动内存管理的关键参数与配置 在了解Oracle自动内存管理的具体操作之前,首先...

    Oracle Database 11g Administration Workshop II (数据库管理-课堂练习II 学生指南第3册)

    - **Oracle内存体系结构**:涉及SGA(共享全局区)和PGA(程序全局区)的概念,了解它们是如何分配和管理的对于优化数据库性能至关重要。 - **表空间和数据文件**:表空间是逻辑存储单元,数据文件是物理存储单元...

    Oracle体系结构学习文档

    3. **第4课:管理Oracle实例.pdf** 实例管理涉及启动、关闭数据库实例,以及如何调整内存结构以优化性能。本课可能包含有关 srvctl 命令、监听器管理和数据库服务的详细信息。 4. **第5课:管理ASM实例.pdf** ...

    oracle dba的官方教材3

    - **Oracle Database 11g**:这是Oracle数据库系统的第11个主要版本,其中的“g”代表Grid(网格),表明该版本支持网格计算环境下的数据库管理。 - **Oracle Grid Infrastructure for a Single Instance**:为了...

    让Oracle跑得更快2:基于海量数据的数据库设计与优化

    2. **监控与调整**:实施实时监控,及时发现性能瓶颈并进行调整,包括使用Oracle自带的监控工具(如Enterprise Manager)和第三方监控系统。 ### 备份与恢复策略 1. **备份策略**:设计合理的备份策略,包括全库...

    oracle10g企业应用培训文档

    - **2.2.2 Oracle 内存结构**:包括系统全局区 (SGA) 和程序全局区 (PGA)。 **2.3 Oracle 数据库** - **2.3.1 数据库物理结构**:包括数据文件、重做日志文件和控制文件。 - **2.3.2 数据库逻辑结构**:包括表空间...

    Oracle 9i&10g编程艺术:深入数据库体系结构.pdf

    ### 第3章:文件 此章节详细阐述了Oracle数据库中各种文件的角色和功能,如参数文件、跟踪文件、警告文件、数据文件、临时文件、控制文件、重做日志文件、密码文件、闪回日志文件、DMP文件(用于导入导出)、数据泵...

    Oracle9i&10g编程艺术.pdf

    4. **内存结构详解**:深入分析了Oracle的内存管理机制,包括进程全局区(PGA)、用户全局区(UGA)和系统全局区(SGA)的细节,以及不同内存区域的管理策略。 5. **Oracle进程管理**:讲解了服务器进程、后台进程和从属...

    Oracle Database 10g: 数据库管理- 课堂练习II 第二册

    Oracle内存结构 - **SGA(共享全局区)**:包括数据缓冲区缓存、重做日志缓冲区、共享池等。 - **PGA(程序全局区)**:每个会话都有自己的PGA,用于存储特定于会话的数据。 ##### 2. Oracle进程 - **后台进程**:...

    Oracle 9i&10g编程艺术:深入数据库体系结构 中文

    - **自动PGA内存管理**:对比了手动和自动PGA内存管理的特点。 - **PGA和UGA小结**:总结了PGA和UGA的主要区别。 - **4.2 系统全局区**: - **固定SGA**:解释了固定SGA的组成部分及其作用。 - **重做缓冲区**...

    oracle10g概念

    - **8.1 Oracle内存结构简介**:概述了Oracle数据库的内存结构。 - **8.2 SGA纵览**:系统全局区(System Global Area, SGA)是Oracle实例中的共享内存区域,包含了所有用户进程和服务器进程共享的数据和控制信息。 ...

    Oracle Database 11g Administration Workshop II (数据库管理-课堂练习II 学生指南第1册)

    - **ASM实例**:类似于普通的Oracle数据库实例,有自己的内存结构和后台进程。 ##### 4.2 ASM 常规体系结构 - **磁盘组**:用于组织和管理物理磁盘的逻辑容器。 - **故障组**:提高冗余度的一种方法,通常将磁盘...

    几本oracle好书

    2. **Oracle体系结构**:Oracle数据库的架构包括内存结构(如SGA和PGA)、进程结构、存储结构(表空间、数据文件、控制文件等)以及网络组件。了解这些组成部分的工作原理能帮助我们优化数据库性能。 3. **Oracle...

Global site tag (gtag.js) - Google Analytics