ITPub博客

首页 > Linux操作系统 > Linux操作系统 > 第12天---oracle5章内容整理---实例--内存结构

第12天---oracle5章内容整理---实例--内存结构

原创 Linux操作系统 作者:大米嗵嗵 时间:2011-02-15 23:11:19 0 删除 编辑

实例:   SGA和后台进程组成

实例和数据库的关系:一个实例只能对应一个数据库,一个数据库可以有多实例(RAC

同一个实例不能打开一个数据库2次,必须重建一个实例才能再次打开数据库

SID:实例名   ORACLE_SID

ORACLE HOME:数据库安装文件的存放位置   ORACLE_HOME

数据库启动和关闭的过程

开:nomount——mount——open

关:close——nomount——shutdown

关闭数据库的4种方式:abortimmediatetransactionalnormal

实例的启动过程:寻找spfile---分配SGA---启动后台进程---过程写入alerttrace文件

检查点的概念:检查点进程将检查点写入数据文件的头部和控制文件里

实例恢复的概念:从最近的检查点开始,由SMON执行

过程:前滚——(打开数据库)——回滚

     前滚用到online redolog file

     回滚用到undo segment

参数文件:包含的内容和作用。

spfile:只能存放在服务器,SCOPE=MEMORY / SPFILE / BOTH

Pfile:可以存放在客户端

诊断文件:alert.logtrace文件

         ADR:统一的目录结构,诊断文件格式和工具

 

 

数据库内存结构包括:SGAPGA(UGA),软件代码区

UGA:在SGA中(共享服务器连接时)

      PGA中(专用服务器连接时)

 

 

PGA:结构

私有SQL区:存储绑定变量等信息。(位置依赖于会话的连接类型)

     运行时区run-time areaSQL语句结束就会释放的空间

     持续数据区persistent areaSQL语句的游标关闭才会释放的空间

SQL工作区:用于排序,哈希连接,位图融合、创建 的操作

Session memory会话内存:存储会话的相关信息

 

SGAfixed SGA  固定SGA:包含数据库和实例的状态信息(用户数据不会储存在此)

      Database buffer cache

      Redo log buffer

      Shared pool

      Java pool

Variable SGA可变SGA,空余的可供空间分配)

等等

 

  SGA_MAX_SIZE    SAG_TARGETASMM -----shared memory manage

    ASMM管理的:shared pooljava poollarge poolbuffer cachestreams pool

    需要手动管理的:keep/recycle buffer cache和非标准容量数据库使用的buffe cache

 

Buffer cache:存放从数据文件拷贝过来的数据块副本

   管理方式:LRU列表     (全表扫描例外,会直接放在LRU端,因为全表的数据只是

             Write list                                       暂时需要的)

   3种状态:unused

            Clean

            Dirty

 Cache hit缓存命中和cache miss缓存丢失(需要再复制datafile中的数据到buffer cache里)

  可以在实例运行的情况下修改buffer cache的大小

   Buffer writes的情况:buffer cache满了,复制新的block时找不到clean buffer

                      数据库写checkpiont

                      将表空间置于只读时或脱机时

     Flash cachedisableenable两种情况)

          enable时,如果buffer cache满了,可以先写入flash cache,但buffer header仍在LRU列表上,而buffer bodyflash cache

   buffer cache可以逻辑上被分为多个buffer pooldefault pool

                                             keep pool  

                                             recycle pool

 

Redo log buffer:以重做条目redo entry的形式存储

重做条目在日志缓冲区内占连续的空间(fixed SGA也是如此)

       LGWR将其写入redo log file

 


Shared pool:结构

 

 

 

 

 

 

Large pool 可选

       服务于:共享服务器的UGA会话内存

               I/O服务进程

               Oracle 备份与恢复操作

  可以存储shared pool中的server result cache(解析结果),让shared pool更专注与解析SQL

 

Java pool

Streams pool

Fixed pool

 

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/24005010/viewspace-687301/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2010-07-31

  • 博文量
    75
  • 访问量
    135030