关于ORACLE数据库性能调整与优化教学研究.docVIP

关于ORACLE数据库性能调整与优化教学研究.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
关于ORACLE数据库性能调整与优化教学研究

关于ORACLE数据库性能调整与优化教学研究   摘 要:从Oracle的体系结构及数据存取特点出发,对Oracle数据库性能的调整与优化技巧进行了多层次研究,归纳并提出了调整与优化Oracle数据库系统性能的若干对策及优化方法。   关键词:性能调整与优化 ORACLE 内存调整 查询优化      在数据库技术应用越来越广泛的当今,Oracle数据库成为国内高端数据库市场的主流产品及信息化系统的主要支柱。然而,随着数据库存储的信息越来越多样,数据量越来越大,数据处理越来越复杂,对数据库性能的要求也就越来越高。该如何充分利用现有的软硬件资源,调整与优化数据库的性能已经成为数据库领域一个十分重要的课题。通过在教学实践经验中反复测试、不断归纳总结,依据Oracle数据库的数据存取方式及特点,全文将Oracle数据库系统性能的优化分为四个不同的调整级别,分别是操作系统级包括硬件平台、Oracle 服务器级的调整、数据库设计级的优化以及SQL语句的优化[5]。全文以四个调整级别为出发点,从五大方面详细介绍了Oracle数据库性能优化的策略及方法。   2.内存优化与调整   在Oracle众多需要调整的参数中,内存参数是首先需要调整的,因为内存参数是制约数据库性能的主要参数,内存参数设置是否合理、恰到好处直接影响数据库的运行速度。Oracle的体系结构如图1所示,系统全局区(SGA)是数据库占用服务器内存中最大的一个区域,也是影响数据库性能的十分重要的一个指标。系统全局区(SGA)即通常所说的内存调优的最主要对象,其主要由数据缓冲区、日志缓冲区、共享池、大型池及Java池组成。   SGA是Oracle数据库的心脏,正确的SGA大小对数据库的性能至关重要,内存参数设置原则:SGA+PGA+OS使用内存总物理RAM。SGA参数设置主要包括以下几个部分:   图1 Oracle体系结构   2.1 数据缓冲区(Database Buffer Cache)   主要存储由磁盘数据文件读入的数据,大小由参数db_cache_size确定,数据缓冲区内存是否足够大,效率如何,可以通过计算命中率确定,下图2是计算数据缓冲区命中率的过程[1]。一般要求数据缓冲区的命中率在90%以上,否则必须增加数据缓冲区的大小。数据缓冲区是SGA中主要设置对象,通过反复测试得出:一般可以设置为可用内存的40%左右,以使数据缓冲区的命中率达到更高的水平。   图2 计算数据缓冲区的命中率   2.2 共享池:(Shared Pool)   包括库缓冲区(Library Cache)和数据字典缓冲区(Data Dictionary Cache)两个部分。缓冲区的成功率必须大于99%,如果计算得到成功率小于99%,则需要增加参数shared_pool_size的值,即增加共享池的大小。共享池是SGA中主要设置对象,通过反复测试得出:一般可以设置为可用内存的10%左右,以使数据字典缓冲区和库缓冲区的成功率达到最高水平。   2.3 日志缓冲区:(Redo Log Buffer)   用于存储数据库的修改信息。相对于数据缓冲区及共享池而言,日志缓冲区大小对于数据库性能的直接影响要小一些。同理也可以计算存储日志在进入日志缓冲区时的成功率与失败率,失败是由于日志缓冲区过小而没有空闲空间造成,所以日志缓冲区的失败率表示日志缓冲区是否足够大。日志缓冲区的失败率应该小于1%,否则应当增加数据缓冲区的大小。   3.磁盘I/O及CPU调整优化   磁盘I/O操作需要使用CPU资源来管理SGA中的各个区,所以物理I/O操作与CPU密切相关,从而减少I/O操作次数的同时也减少了应用对CPU的需求。   尽量利用多个CPU处理器来执行事务处理和查询。CPU的快速发展使得Oracle越来越重视对多CPU并行技术的应用,一个数据库的访问工作可以用多个CPU相互配合来完成,应该将数据库服务器和应用程序的CPU请求分开,或将CPU请求从一个服务器转移到另外的服务器。另外,对于多CPU系统应尽量采用Parallel Query Option(PQO,并行查询选项)[3]方式进行数据库操作,这样不仅可以在多个CPU间分配SQL语句的请求处理,并且当用户所查询的数据处于不同的磁盘时,可以保证让一个个独立的进程同时进行数据读取。   4.数据库设计的优化   数据库设计研发阶段是Oracle性能优化的最佳阶段之一,通过对数据库逻辑存储结构和物理存储结构设计进行优化,能解决数据库系统运行过程中性能的渐进性下降或性能突降等问题,以确保系统运行的优良性能。   4.1 规范化与反规范化设计数据库   以往在数据库中规范化设计的优点是有效地消除数据冗余,节约了存储空间

文档评论(0)

189****7685 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档