針對 DML 操作的索引維護成本,9i 提供 MONITORING USAGE 機制,讓 DBA 確認索引是否真被使用,避免無效索引拖垮寫入效能。
-- 1. 啟動監控
ALTER INDEX pk_dept MONITORING USAGE;
-- 2. 執行查詢(期間自動記錄)
SELECT * FROM dept WHERE deptno = 10;
-- 3. 停止監控
ALTER INDEX pk_dept NOMONITORING USAGE;
-- 4. 查詢使用情況
SELECT * FROM v$object_usage;
USED = YES 代表監控期間該索引被使用過,可作為保留/刪除依據。
影響版本:9.2.0.5 之前
觸發條件:執行 ALTER INDEX SYS.I_OBJAUTH1 MONITORING USAGE 後,未執行 NOMONITORING 直接重啟資料庫。
現象:資料庫掛載階段卡住,無錯誤訊息,無法啟動完成。
鐵律:嚴禁對 SYS 系統索引啟用監控;若已啟用,務必在關機前關閉監控。