数据库性能分析及调整一例[12]

[入库:2005年8月18日] [更新:2007年3月24日]

本文简介:选择自 cn_chenfeng 的 blog

这个参数指定一个完全连续扫描的一次i/o操作过程中读取的块的最大数量。它的增加对io是有改善的,特别是在做full table scan的时候,可以减少io的次数。

 

3.调整db_block_lru_latches=2

这个参数指定lru 闩锁集数量的上限。lru锁的数量是在oracle数据库内部用来管理数据库缓冲的,它严重依赖于服务器上cpu的数量,这个值通常设置为服务器上cpu_count的一半,增大这个值有利于提高磁盘的i/o性能。

 

4.调整session_cached_cursors=200

这个参数指定要高速缓存的会话游标的数量,对同一sql语句进行多次语法分析后,它的会话游标将被移到该会话的游标高速缓存中。增大这个值可以缩短语法分析的时间,因为游标被高速缓存,无需被重新打开。

 

5.调整log_buffer=1048576

参数log_buffer指定在 lgwr 将重做日志缓冲区里的内容写入重做日志文件之前,用于缓存这些条目的内存量。这个参数以字节为单位,同时受cpu_count的影响, log_buffer如果被设置得太高(例如,大于1mb),这会引起性能问题,因为大容量的结果会使得写入同步进行(例如,日志同步等待事件非常高)。

 

6.调整db_block_buffers = 200000  shared_pool_size= 262144000

按照杭州的规划,oracle最终运行起来占用近1/2的物理内存。其中最主要的两个参数为:

db_block_buffers:它的配置原则是,最终数据块缓存占据1/3的内存。

shared_pool_size:它的配置原则是,基本控制在200-500m左右。

本文关键:数据库性能分析及调整一例
 

本站最佳浏览方式为 分辨率 1024x768 IE 6.0(或更高版本的 IE浏览器)

go top