怎样监控无用的索引

简介: 怎样监控无用的索引   Oracle 9i以上,可以监控索引的使用情况,如果一段时间内没有使用的索引,一般就是无用的索引   语法为:   开始监控:alter index index_name monitoring usage;  检查使用状态:select * from v$obj...

怎样监控无用的索引


  Oracle 9i以上,可以监控索引的使用情况,如果一段时间内没有使用的索引,一般就是无用的索引
  语法为:
  开始监控:alter index index_name monitoring usage;
  检查使用状态:select * from v$object_usage;
  停止监控:alter index index_name nomonitoring usage;

  当然,如果想监控整个用户下的索引,可以采用如下的脚本:
  set heading off
  set echo off
  set feedback off
  set pages 10000
  spool start_index_monitor.sql
  SELECT 'alter index '||owner||'.'||index_name||' monitoring usage;'
  FROM dba_indexes
  WHERE owner = USER;
  spool off
  set heading on
  set echo on
  set feedback on
  ------------------------------------------------
  set heading off
  set echo off
  set feedback off
  set pages 10000
  spool stop_index_monitor.sql
  SELECT 'alter index '||owner||'.'||index_name||' nomonitoring usage;'
  FROM dba_indexes
  WHERE owner = USER;
  spool off
  set heading on
  set echo on
  set feedback on

目录
相关文章
|
7月前
|
SQL Oracle 关系型数据库
分析索引失效的几种情况
联合索引 is not null 只要在建立的索引列(不分先后)都会走, in null时 必须要和建立索引第一列一起使用,当建立索引第一位置条件是is null 时,其他建立索引的列可以是is null(但必须在所有列 都满足is null的时候),或者=一个值; 当建立索引的第一位置是=一个值时,其他索引列可以是任何情况(包括is null =一个值),以上两种情况索引都会走。其他情况不会走。
103 1
|
7月前
|
SQL Oracle 关系型数据库
索引失效的情况分析
大家都知道,一条查询语句走了索引和没走索引的查询效率是非常大的,在我们建好了表,建好了索引后,但是一些不好的sql会导致我们的索引失效,下面介绍一下索引失效的几种情况
47 0
|
数据库 索引
MysSQL索引会失效的几种情况分析
MysSQL索引会失效的几种情况分析
154 0
MysSQL索引会失效的几种情况分析
|
SQL 关系型数据库 MySQL
索引问题小排查
数据库表已建立相关索引,查询SQL也遵循了相关规范,但是查询SQL依然不走索引。甚至同样的表,同样的索引,同样的查询SQL,在非生产环境走索引,但是生产环境却走了全表扫描。遇到此类问题该如何排查?又有那些注意事项呢?
索引问题小排查
|
关系型数据库 索引 MySQL
|
关系型数据库 索引 Oracle
|
监控 索引 关系型数据库
|
索引 SQL BI
第十章——维护索引(6)——查找无用索引
原文: 第十章——维护索引(6)——查找无用索引 前言: 众所周知,索引对性能的提升有巨大作用。但是这是有代价的,索引需要磁盘空间来存放它的B-Tree,并且用于在每次DML执行后更新信息,所以应该在一定时期内检查有无无用索引。
905 0

相关实验场景

更多