Oracle sql 优化の索引监控

  1、监视索引是否使用

  除了主键是完整性约束而自动变为索引外,创建普通索引的目的就是为了提高查询速度,如果我们创建了索引而没有被使用,那么这些不被使用的索引将起到阻碍性能的作用。

  语法:

  --检查某个索引是否被使用
  alter index index_name monitoring usage;
  --检查所有索引使用情况
  select * from V$OBJECT_USAGE;
  --删除不使用的索引
  drop index index_name;

  2、影响索引有效使用的因素

  索引是一把双刃剑,正确使用能大大提高查询效率,但是错误使用也会造成严重性能问题。

  (1)对索引字段进行函数操作或者运算操作;

  (2)错误的使用索引字段类型。原因同(1)一样。

  示例,user_id是Int类型,并且是索引字段 

  where user_id='1285';
  --数据库会默认将语句转换为
  where to_char(user_id) = '1285'

 

 

  

posted @ 2015-09-12 09:27  有志竟成  阅读(149)  评论(0编辑  收藏  举报