Chinaunix首页 | 论坛 | 博客
  • 博客访问: 518726
  • 博文数量: 101
  • 博客积分: 1635
  • 博客等级: 上尉
  • 技术积分: 1282
  • 用 户 组: 普通用户
  • 注册时间: 2012-07-05 01:51
文章分类

全部博文(101)

文章存档

2019年(2)

2018年(16)

2013年(14)

2012年(69)

我的朋友

分类: Oracle

2013-01-22 11:59:04

从oracle 9i开始 可以监控oracle索引的使用情况,具体方法如下:
alter index . monitoring usage;
对某个索引开启监控后,就可以观察该索引是否被使用:
select index_name,monitoring ,used,start_monitoring ,end_monitoring
from v$object_usage;
其中v$object_usage限制显示当前用户下被监控的索引的情况,其它用户登录数据库无法看到。
如果要查看所有用户下被监控的索引的使用情况,使用如下的脚本
select u.name owner,io.name index_name,t.name table_name,
decode(bitand(i.flags,65536),0,'NO','YES')monitoring,
decode(bitand(ou.flags,1),0,'NO','YES')used,
ou.start_monitoring end_monitoring,
ou.end_monitoring end_monitoring
from sys.user$ u,sys.obj$ io,sys.obj$ t,sys.ind$ i,sys.object_usage ou where i.obj#=ou.obj#
and io.obj#=ou.obj#
and t.obj#=i.bo#
and u.user#=io.owner#
如果要取消对索引使用情况的监控,可使用下列的sql
alter index. nomonitoring usage;
阅读(1945) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~