PGA分两种管理模式:

手动PGA内存管理:用户指定排序区和散列区所使用的内存,每个连接使用相同的内存。

自动PGA内存管理:告诉Oracle可以使用的PGA的总量,由Oraclce根据系统负载决定具体分配。即PGA内存可以动态扩大和回收

9iR1时默认为手动PGA内存管理,9iR2以后默认为自动PGA内存管理。

2、PGA内存管理模式设置(参数workarea_size_policy)

设为MANUAL,使用手动管理方式。

设为AUTO,并且pga_aggregate_target不为0时,启用自动内存管理。

3、PGA相关的参数

bitmap_merge_area_size             --&gt位图合并区分配的值

create_bitmap_area_size            --&gt创建位图分配的值

hash_area_size                     --&gt主要用于hash join时分配的大小

sort_area_size                     --&gt排序所用的内存总量,影响one-pass,multi-pass,optimal

sort_area_retained_size            --&gt排序后在内存中保存排序信息的内存总量

这几个参数在Oracle 9i之前被使用,在Oracle 9i可以对这几个参数进行手动分配,亦可以由系统自动分配。

当使用workarea_size_policy为AUTO且pga_aggregate_target非零值时,上述四个参数建议根据系统自动负荷自动调整

SQL> show parameter area_size

NAME                                 TYPE        VALUE

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

bitmap_merge_area_size               integer     1048576

create_bitmap_area_size              integer     8388608

hash_area_size                       integer     131072

sort_area_size                       integer     65536

workarea_size_policy                 string      AUTO

pga_aggregate_target

a.决定了所有session总计可使用最大PGA内存值,该参数可动态修改。连接数少时则实际分配的PGA内存通常小于target值,当连接

数多的时候则实际分配的PGA内存会超过target值。target值为尽可能保持的目标值。

b.全局PGA分配以及私有工作区分配受限于该参数

c.该参数在9i中仅支持专有服务器模式,在10g之后既支持专有服务器模式也支持共享服务器模式

d.pga_aggregate_target被分为可调整区和不可调整区,可调整区为SQL工作区,其余为不可调整区

e.当少量用户连接到数据库时,则每个用户享有相对较多的PGA内存,而当大量用户连接时则每个用户分配相对较少的PGA内存。

f.单个串行查询(非并行查询)可能包括多个排序/散列操作,每个排序/散列操作最多使用5%的PGA内存。

h.单个并行查询最多可用到30%的PGA内存,无论有多少并行进程。

对于PGA的监控雨调整,通过 V$pgastat  v$pga_target_advice v$pga_target_advice_histogram  视图作为参考

PGA的调整命令  系统级更改:

ALTER SYSTEM SET WORKAREA_SIZE_POLICY = {AUTO | MANAUL};

ALTER SYSTEM SET PGA_AGGREGATE_TARGET=239075328;

ALTER SYSTEM SET SORT_AREA_SIZE = 65536 SCOPE = SPFILE;--&gt使用AUTO方式时该参数不起作用

ALTER SYSTEM SET HASH_AREA_SIZE = 65536 SCOPE = SPFILE;--&gt使用AUTO方式时该参数不起作用

会话级更改

ALTER SESSION SET WORKAREA_SIZE_POLICY = {AUTO | MANAUL};

ALTER SESSION SET SORT_AREA_SIZE = 65536;--&gt使用AUTO方式时该参数不起作用

ALTER SESSION SET HASH_AREA_SIZE = 65536;--&gt使用AUTO方式时该参数不起作用

oracle pga的作用,ORACLE PGA 的调整相关推荐

  1. oracle数据缓冲区作用,Oracle内存结构(02)--缓冲区

    用户提交一个新SQL语句时,Oracle会分析(parse)该句SQL(硬解析),这个过程将耗费相对较多的时间.分析完毕后,oracle会将该SQL的分析结果给保存在Library Cache中,当数 ...

  2. oracle 分区字段作用,oracle表分区的作用

    表空间及分区表的概念 表空间:(推荐学习:web前端视频教程) 是一个或多个数据文件的集合,所有的数据对象都存放在指定的表空间中,但主要存放的是表, 所以称作表空间 分区表: 当表中的数据量不断增大, ...

  3. oracle pga的作用,Oracle PGA作用

    专有模式下ORACLE会给每个连接分配一个服务进程(Server Process),这个服务进程将为这个连接服务.为这个服务进程分配的内存叫做PGA.PGA不需要Latch也不需要Lock,永远不会发 ...

  4. oracle中having作用,oracle中having与where的区别

    1.where 不能放在group by 的后面 2.HAVING 是跟GROUP BY 连在一起用的,放在GROUP BY 后面,此时的作用相当于WHERE 3.WHERE 后面的条件中不能有聚集函 ...

  5. oracle中recover作用,Oracle rman中restore和recover的区别

    在Oracle的备份与恢复的知识点中,经常会出现Restore 和 Recovery两个词. 由于这两个词在字典中的解释很接近,Oracle的官方文档中看到了以下解释. Restoration:A c ...

  6. oracle中tns作用,Oracle 中TNS的作用

    什么是TNS? TNS是Oracle Net的一部分,专门用来管理和配置Oracle数据库和客户端连接的一个工具,在大多数情况下客户端和数据库要通讯,必须配置TNS,当然在少数情况下,不用配置TNS也 ...

  7. round在oracle中的作用,oracle中round函数的使用

    Round 函数 语法为ROUND(number,num_digits) 其中Number是需要进行四舍五入的数字:Num_digits为指定的位数,按此位数进行四舍五入, 如果 num_digits ...

  8. oracle ltrim函数作用,oracle ltrim函数的用法

    今天在论坛里看了一篇帖子,讨论ltrim() 函数的详细用法,下面我借几个高手的回答总结一下: 先看几个实例: SQL> select ltrim('109224323','109') from ...

  9. Oracle EBS MTL_SUPPLY作用

    Oracle EBS MTL_SUPPLY作用 Oracle EBS MTL_SUPPLY作用 MTL_SUPPLY stores incoming supply information for an ...

最新文章

  1. 10分钟搞定 Java 并发队列
  2. Mozilla 准备让“合格” Linux 用户测试 WebRender
  3. MySQL删除退出后数据未更新,mysql一不小心删除了数据或更新了数据没有加where 条件...
  4. Ubuntu11.04更新源(转)
  5. 使用Java Spring消费MySQL中的数据库存储过程
  6. [算法]浅谈求n范围以内的质数(素数)
  7. Solaris11 磁盘分区
  8. 10年 | 写了10年的代码,我最怕写Mybatis这些配置,现在有详解了
  9. 二套房贷款首付比例?
  10. Docker教程小白实操入门(5)--如何进入一个容器
  11. html英文特殊字体代码,字体_中英文字体等(示例代码)
  12. fatal error C1001: An internal error has occurred in the compiler
  13. 【资料】wod旗帜,纹章
  14. 科学减肥新方法——红光光浴#大健康#红光光浴#红光#种光光学
  15. 有关“夜壶冲”的由来
  16. 1500 多款 3D Emoji,承担你的表情包!
  17. 上海海洋大学计算机考研资料汇总
  18. 2000个工作汇报PPT模板免费下载
  19. 华硕z590和微星z590哪个好
  20. linux服务器配置与管理_你需要知道什么才能成为系统管理员? | Linux 中国

热门文章

  1. JavaScript制作的时钟
  2. Frustum culling
  3. Python多值函数
  4. jquery 元素节点操作 - 创建节点、插入节点、删除节点
  5. 浏览器主页被360/2345等劫持
  6. [UE4]设置和获取GameInstance的方式:SetGameInstance,GetGameInstance
  7. 【Head First 模式设计】第1章 策略模式
  8. 光纤收发器的选择与维护!
  9. 如何设计一个权限管理模块?
  10. AODV协议的运行方式