2007 Oracle数据库基础教程 口缓冲块的类型: “脏”缓存块( Dirty Buffers) 口保存的是经被修改过的薮据 空闲缓存块( Free Buffers) 口不包含任何数据,它们等持后合进程或服齐赑进程冋其卬写 入数据。 命中缓存块( Pinned Buffers) 口正被使用,或者欷显式声明为保霤的缓存块
2007 Oracle 数据库基础教程 缓冲块的类型: ◼ “脏”缓存块(Dirty Buffers) 保存的是已经被修改过的数据 ◼ 空闲缓存块(Free Buffers) 不包含任何数据,它们等待后台进程或服务器进程向其中写 入数据。 ◼ 命中缓存块(Pinned Buffers) 正被使用,或者被显式声明为保留的缓存块
2007 Oracle数据库基础教程 口缓冲块的管理 ■该列表中包含那些已经被修改但还没有写入数据文件 的脏缓存块。 ■LRU列表( Least Recently Used):该列表中包 含所有的空闲缓存块、命中缓存块以及那些还没有来 得及移入到脏缓存块列表的脏缓存块。在该列表中, 最近被访问的缓存块被移动到该列表的头部,而其他 缓存块向列表尾部移动,最近最少被访问的缓存块最 先被移出LRU列表,从而保证最频繁使用的数据块始 终保存在内存中
2007 Oracle 数据库基础教程 缓冲块的管理 ◼ 该列表中包含那些已经被修改但还没有写入数据文件 的脏缓存块。 ◼ LRU列表(Least Recently Used):该列表中包 含所有的空闲缓存块、命中缓存块以及那些还没有来 得及移入到脏缓存块列表的脏缓存块。在该列表中, 最近被访问的缓存块被移动到该列表的头部,而其他 缓存块向列表尾部移动,最近最少被访问的缓存块最 先被移出LRU列表,从而保证最频繁使用的数据块始 终保存在内存中
2007 Oracle数据库基础教程 口数据高速缓冲区大小 DB CACHE SIZE (DB BLOCK SIZE DB BLOCK BUFFERS ■可以在参数文件中设置数据高速缓冲区的大小。数 据高速缓冲区越大,用户需要的数据在内存中的可 能性越大,即缓存命中率高,从而减少了 Oracle访 问硬盘数据的次数,提高数据库系统执行的效率。 然而,数据高速缓冲区的值太大, Oracle不得不在 内存中寻找更多的块来定位所需要数据,反而降低 系统性能。因此需要确定一个合理的数据高速缓 冲区的大小
2007 Oracle 数据库基础教程 数据高速缓冲区大小 ◼ DB_CACHE_SIZE (DB_BLOCK_SIZE、DB_BLOCK_BUFFERS) ◼ 可以在参数文件中设置数据高速缓冲区的大小。数 据高速缓冲区越大,用户需要的数据在内存中的可 能性越大,即缓存命中率高,从而减少了Oracle访 问硬盘数据的次数,提高数据库系统执行的效率。 然而,数据高速缓冲区的值太大,Oracle不得不在 内存中寻找更多的块来定位所需要数据,反而降低 了系统性能。因此需要确定一个合理的数据高速缓 冲区的大小
2007 Oracle数据库基础教程 重做日志缓冲区 口功能 ■用于缓存在用户对数据进行修改的操作过程中生成的 重做记录。当重做日志缓冲区被添满时,由日志写入 进程把重做日志缓冲区的内容写到磁盘的重做日志文 件中做永久的保存。 SGA区 数据高速缓冲区 重做日志高速缓冲区 ARCH LGWR 归档文件 重做日志文件
2007 Oracle 数据库基础教程 重做日志缓冲区 功能 ◼ 用于缓存在用户对数据进行修改的操作过程中生成的 重做记录。当重做日志缓冲区被添满时,由日志写入 进程把重做日志缓冲区的内容写到磁盘的重做日志文 件中做永久的保存。 SGA 区 数据高速缓冲区 重做日志高速缓冲区 ARCH LGWR 归档文件 重做日志文件
2007 Oracle数据库基础教程 口重做日志缓冲区的大小 LOG BUFFER 在参数文件中设置,LOG_ BUFFER的值越大,重做日 志缓冲区就可以存放更多的事务提交的记录,减少了 数据被频繁填充到重做日志文件中的次数
2007 Oracle 数据库基础教程 重做日志缓冲区的大小 ◼ LOG_BUFFER ◼ 在参数文件中设置,LOG_BUFFER的值越大,重做日 志缓冲区就可以存放更多的事务提交的记录,减少了 数据被频繁填充到重做日志文件中的次数