DBA_Oracle基本系内存和进程组织(概念)

 2014-08-05 Created By
BaoXinjian

一、摘要


1.
Oracle底内存结构

  • 内存结构式Oracle数据库体系中不过重大之一致片段,内存为是记忆数据库性能的第一因素
  • 分类

    • 网全局区SGA (System Global Area)
    • 次全局区PGA (Program Gobal Area)
    • 用户全局区UGA (User Global Area)
  • Oracle进程组织

过程是操作系统中之同样种体制,它可尽同一系列的操作步骤,操作系统会用多个经过来推行Oracle的例外部分,并且对每个连的用户还出一个历程

(1). 用户进程

(2). Oracle进程

  • 服务器进程
  • 后台进程
    • PMON(进程监控进程)
    • SMON(系统监控进程)
    • DBWR(数据库写副进程)
    • LGWR(日志写副进程)
    • ARCH(归档进程)
    • CKTP(检查点进程)
    • CJQO(作业队协调器进程)
    • RECO(恢复过程)

3.
Oracle易歪曲概念

  • 实例和数码
  • 用户与模式
  • 用户以及角色

 

仲、内存结构


  1. 系统全局区SGA (System
    Global Area)

(1).
概念:是拥有数据都得以看的实例的共享区,
数据块、事物处理日志、数据字典信息相当还存储于SGA中

(2).
详解:其中每个实例都只好有一个网全局区,它是见仁见智用户进程同劳务过程展开通信的核心。数据库的各种操作主要以系全局区进行。

(3). SGA所蕴涵的数目:

  • 缓存数据块
  • 在数据库及实行的SQL语句
  • 用户执行的存储过程、函数和触发器

(4). SGA的组成:

  • DB高速缓存
    • 数量高速缓存database buffer cache (DBC)
    • DBC的作用:保存最近起数据文件中读取的数据块,其中的多少让所有用户共享
    • 影响DBC的点滴个参数: DB_BLOCK_SIZE和DB_BLOCK_BUFFERS
  • 共享池
    • 共享池保存了近年来履行的SQL语句、PLSQL程序与数码字典信息,是指向SQL语句和PLSQL程序进行防范解析、编译执行之内存去
  • 重新开日志缓存
    • 重复开日志高速缓存就是储存重做笔录之缓存
    • 又做笔录并无直接写副磁盘的重做日志文件,而是先勾勒副重做的日记缓存
    • 当再次做日志缓存中的再度做笔录及一定的多寡时,由LGWR进程写副重开日志
  • 大型池

    • 巨型池用于大内存操作提供相对独立的内存空间那件
    • 用大型池的操作有:数据库备份和回复,用于共享服务过程的对话内存(大量排序的SQL语句),并行化数据操作
  • 次全局区PGA (Program
    Gobal Area)

(1). 概念:
是如出一辙看似没有共享的内存,专用于特定的服务器进程,并就会由是历程看

(2). PGA的组成

  • 排序区
    • 封存执行order by、group
      by等含有排序操作的SQL语句时所来的现数据
  • 会话区
    • 保留所具备的权柄、角色、性能统计信息
  • 游标区
    • 保留执行带有游标的PLSQL语句所生的临时数据
  • 堆栈区

    • 保留会话中绑定的变量,会话变量和SQL语句运行的内存结构信息
  • 用户全局区UGA (User
    Global Area)

(1).概念:
这个内存区域啊咱用户进程存储了对话状态

 

老三、进程组织


  1. 用户进程

  2. Oracle进程

(1). 服务器进程

(2). 后台进程

  • PMON (进程监控进程)
    • 用以监控服务器进程,以保险能否销毁发生损坏或者出现故障的长河,释放他们的资源
    • 于主机操作系统及利用Oracle监听器注册数据库服务器
  • SMON (系统监控进程)

    • 在实例出现故障的状况下,SMON负责再起动系统,执行崩溃恢复
    • SMON将会见知晓就分配但还没为假释的临时段
    • SMON也会见于表明空间管理着尽盘区结合
  • DBWR (数据库写副进程)

    • 该过程将缓存区的用户所运用的数目写入数据文件
    • 设用户进程总是可以抱不就此的休养存区
  • LGWR (日志写副进程)

    • 举凡为在线重做日志文件被所记录的所有数据库的曾交由业务
    • 日记写副进程会当以下四种植情形施行写副操作
      • 事务处理进程提交
      • 重复做日志缓存已填写1/3
      • 再也做日志缓存中的数据量达到1MB
      • 每3秒时间
  • ARCH (归档进程)

    • 拿再次开日志事务变化写副归档日志
  • CKTP (检查点进程)

    • 当检查点出现不时,对合数据文件的题目进行修改
  • CJQO (作业队协调器进程)

    • 于Oracle中规划且再数据后台运行的历程要作业
  • RECO (恢复过程)
    • 于分布式数据库环境面临恢复过程自动还原失败的分布式事务

 

季、概念区分


  1. 实例和数据库

(1). 实例 (进程+内存结构)

  • Oracle实例时SGA和后台进程的三结合
  • 数据库只是调入到实例所蕴涵的内存和经过面临,才方可采用

(2). 数据库
(数据文件+重做文件+控制文件+临时文件)

(3). 两者区别

  • Oracle实例时SGA(系统全局区)和相同组后大过程的三结合
  • Oralce数据库时靠运行数据库有的具备数据库文件
  • Oracle服务启动时先启动实例,然后转载数据库文件,即作于数据库

  • 用户和模式

(1). 用户:

  • 能够唯一标识一组信任凭着的称呼及密码组合
  • Oracle中之用户实际就算是用于登录Oracle命名账号
  • 用户可有所自己的多寡对象

(2). 模式

  • 是用户所创造的数据库对象的总称
  • 模式受到之目标包括:表、视图、索引、同义词、序列、过程、程序包

(3). 两者关系

  • 模式本身不是目标,模式只是一个因此来描述特定用户之对象集合的属于
  • 模式与用户是各个对应的涉及

  • 用户与角色

(1). 用户

用户就是用户登录Oracle的命名账号

例如:sys, system, scott, hr

(2). 角色

角色就是如出一辙组有关权限的命名结合

例如:connect, resource, DBA

(3). 两者关系

角色是同样组权限的组成,我么将角色付给用户,从而被用户所有角色所享有的权杖

 

 

Thanks and Regards

相关文章