Oracle 19c 有没有办法监控索引?
我已打开索引监控
ALTER INDEX my_index_i MONITORING USAGE;
使用下面的查询可以大致了解何时使用索引:
SELECT index_name,
table_name,
monitoring,
used,
start_monitoring,
end_monitoring
FROM dba_object_usage
WHERE index_name = 'name'
AND owner = 'name'
ORDER BY index_name;
SELECT name, owner, TO_CHAR(last_used, 'YYYY-MM-DD HH24:MI:SS') AS "Last Used"
FROM dba_index_usage
WHERE name = 'name';
问题是,我仍然无法判断一个索引一天被使用了多少次,以及在什么时间被使用?
有没有办法/查询来监控这种情况?
PS 我知道触发器,但我正在寻找替代方案 - 如果我没有找到替代方案,那么触发器就是!
提前致谢!
我相信您想使用系统视图
DBA_INDEX_USAGE
:如果您想比较一段时间内的变化,则必须定期将其记录到表中。
本文详细讨论了如何使用它并提供了示例: