- 1、本文档共18页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Oracle 系统优化步骤及方法
Oracle 系统优化步骤及方法
Oracle 系统优化的步骤和方法
1、优化前提
应用系统方案制定准确,对应用系统运行环境分析合理、正确,在数据库服务器性能、存储空间、网络带宽等方面的配置能够达到系统运行要求。
2、优化目标
响应时间和吞吐量平衡
临界资源
2.1 响应时间和吞吐量平衡
根据应用类型的不同,性能优化的目标不同:
在线事务处理系统(OLTP)把吞吐量定义为性能指标;
决策支持系统(DSS)把响应时间定义为性能指标。
响应时间
响应时间=服务时间+等待时间
系统吞吐量
系统吞吐量指在给定的时间内所完成的工作量。有以下两种技术:
以相同的资源来完成更多的工作(减少服务时间);
通过减少整个响应时间来更快完成工作。
等待时间
当竞争增强的时候,某个任务的服务时间也许保持不变,但它的等待时间将增长。
我们开发的系统一般为OLTP和DSS的复合系统,侧重于OLTP,在硬件允许的情况下最好能够将运行数据库、分析数据库分离。
2.2 临界资源
诸如 CPU、内存、I/O容量、网络带宽等资源,都是减少时间的关键因素。性能好坏取决于以下因素:
可用资源的数量
需要该资源的客户方的数目
客户方等待资源所消耗的时间
客户保持资源的时间长短
随着请求单元的增加,服务时间也增加。为了处理这种情形,用户可以选择:
通过限制请求的速率,从而维护可接受响应时间
还可通过增加资源数目,如CPU和硬盘(增加资源的前提是应用系统设计良好,并且已经做了充分的优化)
3、优化阶段
从实际做的项目过程来看,除了系统安装优化外,系统优化往往都是在系统实施、运行时才考虑,其实到这阶段做系统优化的局限性比较大,因为系统架构设计都成型、固化,大幅度调整设计的代价非常昂贵,一般只能在局部领域做优化,只能通过重新分配内存或优化I/O来或多或少地提高性能,实际上优化应该贯穿系统设计、开发、安装、测试、运行整个过程。
3.1 设计阶段
为了达到最佳的效果,优化工作应当从设计阶段进行,而不是在系统实施后进行。
在数据库设计阶段,个人认为需要注意如下几个方面:
业务对象不能建立在系统表空间;
索引表空间和业务表空间分开;
将LOB类型的字段和其它的类型分开;
根据应用系统功能确定是否要采用冗余字段;
正确的主键字段的选择,建议采用数字,不推荐使用复合主键;
3.2 开发、测试阶段
在开发实现阶段,个人认为需要注意如下几个方面:
执行sql使用变量绑定的方式,尽可能的保留在共享内存中,提高sql命中率;
多表关联查询时采用有效的连接顺序;
尽可能的降低客户端和服务器的网络数据交互,某个业务功能点需要频繁和数据库交互的,建议采用存储过程、临时表实现;
根据查询条件建立必要的索引,查询条件中使用oracle函数建立相对应的函数索引,数据值范围较小的采用位图索引
多张表关联查询时,有时可采用先查询符合条件对应的表中关键字,然后通过关键字再查询对应表中相关信息;
频繁访问,较少更新的数据量较小的表信息可采用缓存的方式;
在实现批量更新、插入时,要采用jdbc批量执行方法,并且调整对应的fetchsize参数。
在测试阶段,应该模拟实际运行环境,测试出相关性能较差的功能点。
因为在设计、开发阶段往往因为并发用户少、数据量小,很多性能问题显现不出来,如果软件测试充分,很多性能问题都可以显现出来,现在有很多优秀的软件测试工具,如LoadRunner、Robert在做压力测试方面都比较方便、优秀。
尽量将系统因程序设计、编码不当导致的性能问题暴露在测试阶段。
3.3 安装阶段
一般在安装生产数据库时,我们根据系统最早的规划,集合软、硬件环境,需要调整操作系统以及数据库参数,
3.3.1操作系统交换区
交换区是Oracle的一项基本的要求。可以根据Oracle的发行要求来确定。一般交换区大小的要求是该服务器内存的2倍至4倍之间,建议是内存的4倍
3.3.2操作系统内核参数
shmmax
共享内存段,建议设大点, 达到最大SGA
shmmin
最小的共享内存段.
shmmni
共享内存标志符的数量.
shmseg
一个进程可分配的最大内存段数.
shmall
最大可允许的内存数,比SGA还要大.
semmns
信号量,跟ORACLE的PROCESS数有关.
semmsl
一个信号量中最大的信号量数.
3.3.3 oracle 文件设置
当服务器平台已完成操作
您可能关注的文档
- 107疼痛解剖及生理基础.doc
- 11代理、肉鸡、跳板概念.doc
- 12时辰及五行.doc
- 100多份品管试卷与答案——资料包(151个DOC)第三章 质量管理体系 练习题.doc
- 12经络时刻表.doc
- 12春《组织行为学》作业2试题与答案.doc
- 10种缩小毛孔方法.doc
- 13-高血压患者睡眠障碍原因分析与护理干预.doc
- 13种最有效促销方法.doc
- 13种音乐格式介绍与对比.doc
- 中考语文复习专题二整本书阅读课件.ppt
- 中考语文复习积累与运用课件.ppt
- 2025年初中学业水平考试模拟试题(二)课件.ppt
- 四川省2015届理科综合试题48套第12套.pdf
- 【课件】战争与和平—美术作品反映战争+课件-2024-2025学年高中美术湘美版(2019)美术鉴赏.pptx
- 【课件】青春牢筑国家安全防线 课件 2024-2025学年高中树立总体国家安全观主题班会.pptx
- 【课件】原始人的创造+课件高中美术湘美版(2019)美术鉴赏.pptx
- 上海证券-美容护理行业周报:流量加快去中心化,强运营头部品牌影响较小 -2024-.pdf
- T_CSEIA 1005—2023_能源工业互联网平台数据治理要求.pdf
- T_CDSA 504.16-2023_急流救援技术培训与考核要求.pdf
文档评论(0)