您的位置: 首页 >> 新闻中心 >> 计算机 >> IT认证 >> 厂商认证 >> Oracle认证
操作实务:Oracle数据库业务优化心得
■ 最新课程推荐更多课程>>
学校培训课程开课时间上课地点精英价报名
中软培训 ORACLE9i数据库电话预约海淀学院南路¥8624
东方瑞通 Oracle 9i DBA电话预约海淀区知春路¥6566
东方瑞通 Oracle 9i DBA-1 SQL与PL/SQL电话预约海淀区知春路¥1470
东方瑞通 Oracle 9i DBA-2 管理基础一电话预约海淀区知春路¥1960
东方瑞通 Oracle 9i DBA-2 管理基础二电话预约海淀区知春路¥2156

  做了一大半年的业务数据库优化了,有一点感想,写出来自励一下。

  公司开发的产品基本上都使用ORACLE数据库,而且业务系统中存储和使用的数据量很大,使用业务系统的用户也很多。在系统忙时,大约会有一千个用户同事访问数据库系统,因此经常会有用户抱怨系统慢,点击查询后,系统出现假死机现象,后台运行ORACLE系统的小型机的IDLE值偏低(甚至出现IDLE为0的情况,这时用户会惊呼数据库系统会瘫掉,虽然小型型机在IDLE值为0的情况下也不一定会瘫机,但这无疑会增加用户的担忧),系统运行在一个不安全的状态等等。

  对于我现在所做的ORACLE优化,其实还停留在SQL优化的层次(以前我的前辈曾给我说关于数据库优化的三个层次:一是针对SQL的优化,如使用正确是索引,使用ORACLE提示等;二是针对数据库对象的优化,如增加索引,微调表结构等;三针对业务的优化,需要更改业务逻辑或者表结果,此类优化一般代价比较大,一般很少针对正在运行的系统做类似的操作)。

  公司的客户很多,大多数情况会在公司远程处理客户的数据库问题。作为问题的定位者,一定要搞清楚实际运行的数据库系统到底出现了什么问题。现场的维护人员和用户最喜欢使用的形容词是:系统很慢;数据库锁表了等等。用户向外面传达的信心往往是非常模糊的,在开始接触这个问题时候起,我们就要引导用户去帮外面了解系统真实的情况。有几个东西是一定要看看的,一个是ORACLE系统的警告日志文件,在系统运行的有问题或者是忙时的几份STATSPACK报告(一般间隔时间10到15分钟),UNIX下SAR命令的输入结果(该命令可以按既定的时间间隔收集小型机系统CPU的使用情况)。通过这三个从现场收集的结果,我们基本可以了解现场数据库的运行情况。

  其中ORACLE系统的警告日志文件能让我们了解ORACLE系统运行有没有一些重大的问题。

  STATSPACK报告中概括了数据库系统的运行基本情况,其中关于如何解读报告可以写一本书了,不过我们首先要关注的是报告中有一段“Top 5 Timed Events”,这一段描述了当前ORACLE主要的等待事件是什么(关于ORACLE等待事件的概念可以参考相关的资料)。

  SAR命令的输入我们要关注三个输出的分布情况USR、WIO、IDLE。其中SYS+USR+WIO+IDLE应该等于100%,USR占的比例高,一般说明SQL语句执行效率有问题,这种问题一般是由于索引选择性不高、表连接顺序和方式不对等等;WIO高一般说明SQL语句频繁进行I/O操作。对于具体的问题,则需要对具体的SQL语句进行分析,在分析过程中,阅读执行计划是我们的一个重要的工具。

  在对ORACLE系统的整体情况有了一定的了解之后,下一步需要分析的就是系统运行过程效率不高的SQL,这是对业务优化的一个起点。如果这时不能够在实际系统中操作,了解SQL的运行过程是一个比较费时的过程的。不管怎么样,对于我们怀疑有问题的SQL,首先要阅读的就是该SQL的在实际系统中的执行计划,语句涉及到的表的数据量,访问表使用索引的选择性如何,表连接的顺序,多表之间的关联关系等等。

  对于ORACLE应用系统的优化,大方向上有一个顺序,首先考虑优化业务系统、再考虑优化ORACLE系统本身的参数(如内存分配等),再考虑操作系统本身的优化;在优化业务系统中,首先是首先相关的SQL,以SQL入手分析表是否缺少索引,表连接顺序是否正确,使用的索引是否正确等,然后再考虑调整表结构,调整业务逻辑等等。因此,SQL语句是我们对一个ORACLE业务系统进行优化的敲门砖。

  对于SQL优化,前面提到了,ORACLE的执行计划是我们必须使用的工具。本来按ORACLE系统本身提供的方法获取执行计划是一件非常麻烦的事情,不过现在的可视化工具比如PL/SQL DEVELOP或者TOAD等都给我们提供了非常方便的手段来获取SQL语句的执行计划,不过我认为ORACLE本身提供的方法还是有必要会的,特别是在远程处理问题的时候(我也不会,一定要学习一下)。

本新闻共2页,当前在第1页  1  2

  影视动画培训   北大BEC培训官方报名网站   2008美国夏令营启航官方指定报名网站   2008留学第一站!  
  北师大 火星时代
共举影视动画培训之鼎
  北大BEC培训官方报名网站
现在报名独享95折!
  2008年国家职业资格考试
一次过关完全备考手册
  2008留学第一站
留学资讯尽在精英留学站!
 
上一篇:Oracle认证:巧取指定记录与外关联查询
下一篇:Oracle 数据库优化的R方法(Method R)
 相关新闻
·Oracle11g的新特性:Database和SQL重演·如何查询Oracle各组件的版本信息
·Oracle数据库设计开发阶段性能优化策略·可预见的Oracle应用程序的性能优化
·针对Oracle数据库的优化器详细介绍·恢复只有完好数据文件的oracle数据库
·如何修改ORACLE的DATAFILE文件名·Oracle中的LOB类型处理
·Oracle热备期间的过量Redo生成控制·Oracle9i基于视图(view)的约束声明
·Oracle10g中SCN与TimeStamp的相互转换·Oracle诊断工具-RDA使用概述
·如何杀死oracle令人头疼的死锁进程·为什么要成为Oracle认证专家?
·冷眼看Oracle认证 到底该不该入行?·Oracle 数据库优化的R方法(Method R)
 
◇ 重点栏目导航
◇ 精英服务承诺
教育顾问:010-51660910
QQ交流:138660910
相关资料
·如何在Oracle10g中通过网络连接导入数据
·如何使用Oracle10gR2InstantClientLight
·实例讲解Oracle里抽取随机数的多种方法
·Oracle10g新特性之虚拟专用数据库
·Oracle建立二进制文件索引的方法
·Oracle8i中字符集乱码问题析及其解决办法
·为什么有时Oracle数据库不用索引来查找数
·Oracle10g第2版新特性之SQL和PLSQL
·Oracle10g第2版新特性之可管理性特性
·Oracle数据库删除重复记录的方法
相关试题
·2009年国家公务员考试行政模拟试卷一参考
·2009年国家公务员考试行政模拟试卷二
·2009年国家公务员考试行政模拟试卷一
·2009年国家公务员考试申论模拟试卷一参考
·2009年国家公务员考试申论模拟试卷一
·2009年国家公务员考试申论模拟试卷及参考
·2009年国家公务员考试模拟试卷答案之公共
·2009年国家公务员考试模拟试卷答案之公共
·2009年国家公务员考试模拟试卷之公共科目
·2009年国家公务员考试行政模拟试卷二参考
相关热贴
·微软资格论证模拟题:70-210试题
·SUN认证简介
·三大计算机认证考试侧重不同 需理智选择
·Adobe认证简介
·Microsoft认证考试特点与价值
·为什么要获得认证
·IBM认证介绍
·全国计算机等级考试评卷、成绩处理和证书
·给版块加点资料吧——CCIE考试介绍
·排除舆论误导 走出IT考证的五大误区