分类: Oracle
2008-04-23 08:37:26
来源:赛迪网 作者:Aubrey |
Oracle数据库进程概述:
Database buffer cache主要用于存储数据文件中的数据块
数据库高速缓存的数据块是高速缓存与数据文件进行信息交换的基本单位。在Oracle数据库8i以前,数据块大小只有一种,而Oracle数据库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. |