数据库高速缓存的数据块是高速缓存与数据文件进行信息交换的基本单位。在Oracle数据库8i以前,数据块大小只有一种,而Oracle数据库9i以后支持2K,4K,8KB,16KB及32KB五种。
Oracle数据库进程概述:
Databasebuffercache主要用于存储数据文件中的数据块
数据库高速缓存的数据块是高速缓存与数据文件进行信息交换的基本单位。在Oracle数据库8i以前,数据块大小只有一种,而Oracle数据库9i以后支持2K,4K,8KB,16KB及32KB五种。
用命令SQL>SHOWPARAMETERDB可以显示当前数据库的BUFFERCACHE
数据库缓存和特点如下:
<1>.根据最近最少使用LRU。
<2>.由DB_BLOCK_SIZE来指定大小。
<3>.ORACLE使用时是以块大小为单位进行数据存取的。
还包含以下一些独立的子缓存:
<1>.DB_CACHE_SIZE。
<2>.DB_KEEP_CACHE_SIZE。
<3>.DB_RECYCLE_CACHE_SIZE。
注:可以用Altersystemsetdb_cache_advice=on;设置成根据系统的建议来指定大小。
REDOLOGFILE主要是用于重做日志
用命令SQL>SHOWPARAMETERLOG_BUFFER。
SQL>ALTERSYSTEMSETLOG_BUFFER_SIZE=60M。
用来显示或修改重做日志缓冲区的一些信息。
命令SQL>achiveloglist可以查看数据库当前的归档模式。
LARGEPOOL:
与JAVAPOOL一样,都是作为系统可选的内存结构,由SGA来配置。
JAVAPOOL:
当安装或使用JAVA时才用到。
ORACLE内存进程包括两个,一个是SGA,一个是PGA。
(1).SGA在ORACLE实例启动时分配,是ORACLE实例的一个基本组件。
(2).PGA是在当服务器进程启动时分配的。
进程结构:
<1>.USERPROCESS。用于用户与ORACLESERVER交互的进程。
USERPROCESS必须与ORACLE建立连接后才可使用,不可与ORACLESERVER交互。
<2>.SERVERPROCESS。
SERVERPROCESS在用户与服务之间建立连接后,为执行用户命令的一个进程。
<3>.BACKGROUNDPROCESS。
后台进程:DATABASEWRITER(DBWn)用来把DATABUFFERCACHE中的脏数据写回到数据库中。
(注:脏数据是被改变的数据。)