How to know whether a query is using index or not?

You can use the index monitoring feature to check if indexes are used by an application or not. If u set the MONITORING USAGE property for an index, you can query the v$object_usage to see if the index is being used or not. Here is an example:


sys@BBK> CREATE INDEX t1_idx ON t1(c1);

Index created.

sys@BBK> ALTER INDEX t1_idx MONITORING USAGE;

Index altered.

sys@BBK> SELECT table_name, index_name, monitoring, used FROM v$object_usage;

TABLE_NAME INDEX_NAME MON USE
------------------------------ ------------------------------ --- ---
T1 T1_IDX YES NO

sys@BBK> SELECT * FROM t1 WHERE c1 = 1;

no rows selected

sys@BBK> SELECT table_name, index_name, monitoring, used FROM v$object_usage;

TABLE_NAME INDEX_NAME MON USE
------------------------------ ------------------------------ --- ---
T1 T1_IDX YES YES

sys@BBK> ALTER INDEX t1_idx NOMONITORING USAGE;

Index altered.

sys@BBK> SELECT table_name, index_name, monitoring, used FROM v$object_usage;

TABLE_NAME INDEX_NAME MON USE
------------------------------ ------------------------------ --- ---
T1 T1_IDX NO YES

sys@BBK>

OR use the following way;

sql> set autot on exp
sql> SELECT * FROM t1 WHERE c1 = 1;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值