zoukankan      html  css  js  c++  java
  • ORACLE SQL功能优化系列(一)

      来源:网海拾贝




    1. 选用恰当的ORACLE优化器

       ORACLE的优化器共有3种:

       a.  RULE (基于划定规则)   b. COST (基于本钱)  c. CHOOSE (选择性)

       设置缺省的优化器,可以议决对init.ora文件中OPTIMIZER_MODE参数的各类声明,如RULE,COST,CHOOSE,ALL_ROWS,FIRST_ROWS . 你当然也在SQL句级或是会话(session)级对其举行掩饰.

       为了运用基于本钱的优化器(CBO, Cost-Based Optimizer) , 你必须常常运转analyze 饬令,以添加数据库中的东西统计信息(object statistics)的准确性.

       要是数据库的优化器形式设置为选择性(CHOOSE),那么实践的优化器形式将和能否运转过analyze饬令有关. 要是table已经被analyze过, 优化器形式将自动成为CBO , 反之,数据库将接纳RULE情势的优化器.

       在缺省景象下,ORACLE接纳CHOOSE优化器, 为了按捺那些不必要的全表扫描(full table scan) , 你必须只管按捺运用CHOOSE优化器,而直接接纳基于划定规则或许基于本钱的优化器.


    2.     拜候Table的方法


    ORACLE 接纳两种拜候表中纪录的方法:

    a.     全表扫描

           全表扫描便是顺序地拜候表中每条纪录. ORACLE接纳一次读入多个数据块(database block)的方法优化全表扫描.

    b.     议决ROWID拜候表


           你可以接纳基于ROWID的拜候方法景象,提高拜候表的苦守, , ROWID包含了表中纪录的物理位信赖息..ORACLE接纳索引(INDEX)完成了数据和寄存数据的物理职位(ROWID)之间的联系. 往常索引提供了疾速拜候ROWID的措施,是以那些基于索引列的盘问就可以获得功能上的提高.




    版权声明: 原创作品,允许转载,转载时请务必以超链接情势标明文章 原始出处 、作者信息和本声明。不然将穷究功令责任。

  • 相关阅读:
    poj 1087 A Plug for UNIX
    poj 1149 : PIGS
    自己制作的我们学校的校园无线网自动登录程序(C#实现)
    poj 1067取石子(威佐夫博奕)
    poj 1088滑雪
    SQL Server 2005 系统数据介绍:sys.dm_exec_requests
    一票难求:我为铁道部献计献策!
    Integration Services 学习(7):包部署
    Integration Services 学习(8):事务
    Integration Services包部署常见问题汇总
  • 原文地址:https://www.cnblogs.com/zgqjymx/p/1976080.html
Copyright © 2011-2022 走看看