WEB开发网
开发学院数据库Oracle Oracle数据库的性能调整与优化方法探析 阅读

Oracle数据库的性能调整与优化方法探析

 2009-06-08 13:15:48 来源:WEB开发网   
核心提示: 1)SGA—MAX_SIZE的设置,通常的原则是开始就把SGA—MAX—SIZE设为物理内存的25%左右,Oracle数据库的性能调整与优化方法探析(5),如果有大量用户或者可用内存有限,系统都会强制将其设为15%~20%左右,使用索引应该遵循以下原则

1)SGA—MAX_SIZE的设置。通常的原则是开始就把SGA—MAX—SIZE设为物理内存的25%左右,如果有大量用户或者可用内存有限,系统都会强制将其设为15%~20%左右,如果只有少量用户或者有大量物理内存,则允许使用30%-50%的物理内存。同时SGA—MAX—SIZE的大小决定了很多其他参数的粒度大小。SGA—MAX—SIZE<128Mbyte意味着粒度大小为4Mbyte;SGA—MAX—SIZE>128Mbyte意味着粒度大小为16Mbyte。

2)PGA—AGGREGATE—TARGET的设置。PGA—AGGREGATE—TARGET是Oracle在所有会话中间分配的会话PGA内存总量。PGA_ AG-GREGATE-TARGET是Oracle新引入的参数,可以替代*_SIZE类型的参数,当设置PGA_  AG-GREGATE_ TARGET时,必须将WORKAREASIZE_ POLICY设为AUTO。使用PGA_AGGRE-GATE TARGET的好处就是:可设定用户会话的总内存使用量来减少分页。PGA_ AGGREGATETARGET参数应该被设定成能维持ESTD_ PGACACH几HITPERCENTAGE大于95%的值,这样可以产生95%甚至更高的缓存命中率。

3)DB_ GASHE_ SIZE的设置。DB_ GASHE_SIZE是Oracle最关键的参数,它设定了用来存储和处理内存中数据的SGA区域的大小。DBCASH几SIZE是可用来调整数据库缓存命中率的重要参数,命中率就是指那些不用从硬盘上物理读操作的数据库块的访问比例。对于那些事务处理系统来说,数据缓存命中率通常都应该在95%以上,如果命中率低于95%,通常就必须增大DB_CASHE_SIZE。

4)SHARED_ POOL_ SIZE的设置。SHARED_POOL_ SIZE类似于DB_ CASHE_ SIZE,它为那些数据字典缓存和共享SQL语句指定了在SGA里所分配的内存。为了使性能得到优化,必须保证缓存重载率尽量接近0%,并使缓存命中率在95%以上。无论缓存重载率大于1%或缓存命中率低于95%,都应该通过增大SHARED_  POOL_  SIZE优化系统。

4 应用优化

4.1索引优化

索引对数据库I/O的影响十分巨大。如果通过索引来访问数据库,可以大大减少对大型表的全表扫描,从而减少I/O的开销。索引的使用通常能够提高SELECT,UPDA.TE以及DELETE语句的性能,但会降低INSERT语句的性能,因此索引并非是越多越好,使用索引应该遵循以下原则:

1)为不经常更新的静态大表建立索引;

2)为查询语句只选择少量字段进行查询的表建立索引;

3)在经常进行连接,但是没有指定为外键的列上建立索引;

4)在频繁进行排序或分组(即进行order by或group by操作)的列上建立索引;

5)在不同值较多的列上建立检索;

6)在多个待排序的列上建立复合索引(compound index);

7)在没有空值的列上建索引,在含有空值的列上即使建了索引也用不上。

上一页  1 2 3 4 5 

Tags:Oracle 数据库 性能

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接