您的位置:首页 > 数据库 > Oracle

oracle数据库内存结构pga/sga/uga做比较分析

2017-09-09 23:01 387 查看
oracle数据库的内存结构比较复杂,下面对pga/sga/uga做比较分析。

1. sga组成:

    database buffer cache:包括 default pool,keep pool,recycle pool;

    redo log buffer

    share pool:包括 library cache,dictionary cache

    large pool

    java pool

    streams pool

    fixed sga
2.pga组成:

    1)sql工作区:sort area(排序区),hash area(构造hash表),bitmap merge area(索引区)

     2)uga区
3.pga和uga比较:

uga:user global area ,是会话含义的内存区

        为了保证数据可以被会话访问到,所以mts模式属于sga中的大池,专有模式属于pga,属于用户的内存区。

         uga保存当前会话相关的信息,比如会话登录信息、pl/sql包的参数信息,绑定变量的值。

pga:program global area,是操作系统含义上的内存区,

       可以理解为操作系统在一个进程启动时,为他分配的内存空间

        查询使用 show pga;
4.sga和pga比较:

sga:共享数据块,所有进程可以访问,数据并发访问

         涉及lock,latch,锁定和队列

        是数据库最主要优化区域,一些重要的指标:data buffer hit,library hit(hard/soft parse),hot blocks

pga:为专有进程服务,进程间无法数据共享,数据独占

       无需锁定机制

        性能优化只需要考虑它的大小。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息