标题: ORACLE数据库进程简介
lonjew
元帅
Rank: 1



UID 73191
精华 1
积分 30615
帖子 14941
威望 3
金币 14931
热心 12
阅读权限 100
注册 2008-1-28
状态 离线
ORACLE数据库进程简介

ORACLE数据库进程简介
Database buffer cache 用于
存储
数据文件中的数据块.
数据库高速缓存的数据块是高速缓存与数据文件进行信息
交换
的基本单位.ORACLE8i以前,数据块大小只有一种,9i以后支持2K,4K,8KB,16KB及32KB五种.

用命令SQL>SHOW PARAMETER DB可以显示当前数据库的BUFFER CACHE.
数据库缓存和特点如下:
  <1>.根据最近最少使用LRU.
<2>. 由DB_BLOCK_SIZE来指定大小.
<3>.ORACLE使用时是以块大小为单位进行数据存取的.
还包含以下一些独立的子缓存:
  <1>.DB_CACHE_SIZE.
  <2>.DB_KEEP_CACHE_SIZE.
  <3>.DB_RECYCLE_CACHE_SIZE.
注:可以用Alter system set db_cache_advice=on;设置成根据系统的建议来指定大小.

REDO LOG FILE主要是用于重做日志.
用命令SQL>SHOW PARAMETER LOG_BUFFER.
            SQL>ALTER SYSTEM SET LOG_BUFFER_SIZE=60M.
用来显示或修改重做日志缓冲区的一些信息.
命令SQL>achive log list 可以查看数据库当前的归档模式.

LARGE POOL:
  与JAVA POOL一样,都是作为系统可选的内存结构,由SGA来配置.
JAVA POOL:
当安装或使用JAVA时才用到.
ORACLE内存进程包括两个,一个是SGA,一个是PGA.
(1).SGA在ORACLE实例启动时分配,是ORACLE实例的一个基本组件.
(2).PGA是在当
服务器
进程启动时分配的.

进程结构:
  <1>.USER PROCESS.用于用户与ORACLE SERVER交互的进程.

USER PROCESS必须与ORACLE建立连接后才可使用,不可与ORACLE SERVER交互.
  <2>.SERVER PROCESS.
SERVER PROCESS在用户与服务之间建立连接后,为执行用户命令的一个进程.
  <3>.BACKGROUND PROCESS.
    后台进程:DATABASE WRITER (DBWn)用来把DATA BUFFER CACHE中的脏数据写回到数据库中.
    (注:脏数据是被改变的数据.)
    在以下情况下它会写数据库:
      <1>.在发生CHECKPOINT同步.
    <2>.脏数据达到阀值.
    <3>.DATABASE BUFFER CACHE 自由空间太少了.
    <4>.TIMEOUT (3秒钟.)
    <5>.RAC PING REQUEST.
    <6>.TABLESPACE OFFLINE.
    <7>.TABLESPACE READONLY.
    <8>.TABLE DROP OR TABLE TRUNCATE (表数据清空或表结构删除).
    <9>.TABLESPACE BEGIN BACKUP.
   
  由SGA (包含DATABASE BUFFER CACHE,BACKGROUND PROCESS)-----> [ DBWn ]----> {data files,  
  control files, redo log file} ---->由此过程改变数据库中的数据.

LOG WRITER (LGWR) 日志写进程.
  在ORACLE环境中.
  <1>.当COMMIT的时候.  <2>.当三分之一空间满时.  <3>.当日志有1MB需要重做时.
  <4>.每3秒                      <5>.BEFORE DBWn WRITES.(写数据前先写日志).

  REDO LOG BUFFER----->LGWR--->DBWn               
                                                    |--------------------------------------> REDO LOG FILES
                                                      
SYSTEM MONITOR (SMON)系统监控进程
主要任务:
      (1).启动过程(假定DATABASE重启时)如果需要RECOVERY,则此进程会负责打开数据库,及回滚没有
          提交的事务;以及rolls forward changes in the redo logs..这些统称为:instance recovery.
      (2).对每3秒就对系统自由空间的整理.(COALESCES FREE SPACE EVER 3 SEC.)
      (3).清空临时段空间(DEALLOCATES TEMPORARY SEGMENTS).
      这个过程也是在系统启动过程中完成的.

PROCESS MONITOR (PMON) 进程监控进程.
主要用于回滚异常终止的或被用户强制终止的事务.
  <1>.rolling back the transaction.
  <2>.releasing locks.释放锁.
  <3>.releasing other resources.
  <4>.restarts dead dispatchers.重启死掉的调度器.(在共享
服务器
中用).
    PMON  (:Include in SGA)----------------------->PGA

CHECKPOINT (CKPT) 检查点进程
用来在数据库里实现同步,实现之前会强制将脏数据从内在里写到物理文件里.
  <1>.会启动DBWn来写脏数据(SIGNALLING DBWn at CKPT.)
  <2>.完后会更新DATAFILE的HEADER和控制文件的HEADER.而HEADER中有同步所需要的信息,即
          CHECKPOINT的信息.
    <3>.在ORACLE中,正常情况下,所有文件必须同期性地同步;靠CHECKPOINT来完成.
            CKPT(作为后台进程包含在实例中)------------------DATABASE (data files,control files,redo log files.)
              |    |______DBWn                        
              |________LGWR

Archive PROCESS (ARCn) :归档进程(可选进程),当设置归档模式后,可用来自动备份在线日志,(归档日志是重做日志的备份.)
<1>.Automatically archives online redo logs when archiverlog mode is set.
        (设置归档模式后,将自动备份在线日志)

在处理SQL语句时,注意以下过程:
    <1>.用以下进程连接到实例.
      ------------------用户进程(USER PROCESS).
      ------------------服务器进程(SERVER PROCESS).
    <2>.ORACLE服务器进程组件的使用依赖于SQL语句的种类.
        [1].查询语句会返回行.
        [2].DML语句会记录这种改变.
        [3].COMMIT保证了事务的RECOVERY.
    <3>.并不是所有的SQL语句中所有的后台进程都会参与.

    总结:
              ORACLE SERVER. ORACLE服务器进程包含一些文件,进程和内存,在执行一条SQL语句时,并非所有这些都会用上,有些进程用于提高数据库的性能;一些用于当发生软件或硬件异常时恢复数据库;或应用于完成其他一些维护数据库的任务.ORACLE服务器包含ORACLE实例和ORACLE数据库.
              ORACLE INSTANCE: ORACLE实例是用于联系后台进程和内在之间的活动,对数据库进行数据存取前必须先启动实例,每当实例启动时,SGA就被分配给它并启动了一些后台进程.后台进程执行10秒操作并监控有些进程以提供更好的性能.和可靠性.
              ORACLE DATABASE: 数据库包含了系统文件,也称数据库文件,其提供了用以
存储
数据库信息的实际物理存储区域,用数据文件保证了数据一致性.并在当实例发生失败时恢复数据库.

网友 lonjew 签名 - 网友社区 ==
顶部
[广告] 免费域名(Free Subdomain) 免费空间(Free hosting) PR查询(Google Pagerank)



当前时区 GMT+8, 现在时间是 2008-9-7 20:29
信产部ICP备案:京ICP备05066424号 北京市公安局网监备案:1101050648号

Powered by Discuz! 5.5.0
清除 Cookies - 联系我们 - 网友俱乐部 - Archiver - WAP