oracle 11g优化指南

oracle 11g优化指南

ID:14416905

大小:167.84 KB

页数:69页

时间:2018-07-28

oracle 11g优化指南_第1页
oracle 11g优化指南_第2页
oracle 11g优化指南_第3页
oracle 11g优化指南_第4页
oracle 11g优化指南_第5页
资源描述:

《oracle 11g优化指南》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、Oracle内存全面解析Oracle的内存配置与oracle性能息息相关。而且关于内存的错误(如4030、4031错误)都是十分令人头疼的问题。可以说,关于内存的配置,是最影响Oracle性能的配置。内存还直接影响到其他两个重要资源的消耗:CPU和IO首先,看看Oracle内存存储的主要内容是什么:程序代码(PLSQL、Java);关于已经连接的会话的信息,包括当前所有活动和非活动会话;程序运行时必须的相关信息,例如查询计划;Oracle进程之间共享的信息和相互交流的信息,例如锁;那些被永久存储在外围存储介质上,被cache在内存中的数据(如redolog条目,数据块)。此外,需要记住的一点

2、是,Oracle的内存是与实例对应的。也就是说,一个实例就有一个独立的内存结构先从Oracle内存的组成架构介绍1.  Oracle的内存架构组成Oracle的内存,从总体上讲,可以分为两大块:共享部分(主要是SGA)和进程独享部分(主要是PGA和UGA)。而这两部分内存里面,根据功能不同,还分为不同内存池(Pool)和内存区(Area)。下面就是Oracle内存构成框架图:  SGA SharePool BufferCache RedoLogBuffer JavaPool StreamPool(10g) LargePool PGA*nBitmapmergeareaSortAreaHashA

3、rea UGA*nCUA*n下面分别介绍这两块内存区1.1.           SGA(SystemGlobalArea)SGA(SystemGlobalArea系统全局区域)是一组包含一个Oracle实例的数据和控制信息的共享内存结构。Oracle进程和一个SGA就构成了一个Oracle实例。当实例启动时,Oracle会自动从系统中分配内存给SGA,而实例关闭时,操作系统会回收这些内存。下面就是当实例启动后,显示已经分配了SGA:SQL>startupORACLEinstancestarted.TotalSystemGlobalArea 289406976bytesFixedSize  

4、               1248576bytesVariableSize            117441216bytesDatabaseBuffers         163577856bytesRedoBuffers               7139328bytesDatabasemounted.Databaseopened.SQL>SGA区是可读写的。所有登录到实例的用户都能读取SGA中的信息,而在oracle做执行操作时,服务进程会将修改的信息写入SGA区SGA主要包括了以下的数据结构:数据缓冲(BufferCache)重做日志缓冲(RedoLogBuffer)共享池(S

5、haredPool)Java池(JavaPool)大池(LargePool)流池(StreamsPool---10g以后才有)数据字典缓存(DataDictionaryCache)其他信息(如数据库和实例的状态信息)最后的两种内存信息会被实例的后台进程所访问,它们在实例启动后就固定在SGA中了,而且不会改变,所以这部分又称为固定SGA(FixedSGA)。这部分区域的大小一般小于100K此外,用于并非进程控制的锁(latch)的信息也包含在SGA区中SharedPool、JavaPool、LargePool和StreamsPool这几块内存区的大小是相应系统参数设置而改变的,所以有通称为可变

6、SGA(VariableSGA)1.1.1.  SGA的重要参数和特性在设置SGA时,有一些很重要的参数,它们设置正确与否,会直接影响到系统的整体性能。下面一一介绍他们:·       SGA_MAX_SIZESGA区包括了各种缓冲区和内存池,而大部分都可以通过特定的参数来指定他们的大小。当实例启动后,各个内存区只分配实例所需要的最小大小,在随后的运行过程中,再根据需要扩展他们的大小,而他们的总和大小受到了SGA_MAX_SIZE的限制当试图增加一个内存的大小,并且如果这个值导致所有内存区大小总和大于SGA_MAX_SIZE时,oracle会提示错误,不允许修改当然,如果在设置参数时,指定区

7、域为spfile时(包括修改SGA_MAX_SIZE本身),是不会受到这个限制的。这样就可能出现这样的情况,在spfile中,SGA各个内存区设置大小总和大于SGA_MAX_SIZE。这时,oracle会如下处理:当实例再次启动时,如果发现SGA各个内存总和大于SGA_MAX_SIZE,它会将SGA_MAX_SIZE的值修改为SGA各个内存区总和的值SGA所分配的是虚拟内存,但是,在我们配置SGA时,一定要使

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。