在数据库优化过程中,索引的重要性是不言而喻的,但是在我们进行性能调整过程中, 一个索引是否能够被使用到,在索引创建之前是存在不确定性的。
而创建索引又是一个代价很高的操作,尤其是数据量很大的情况下,在11g环境下我们就可以考虑使用虚拟索引,预估索引的效果。
1.
alter session
set "_use_nosegment_indexes"
= true;
create index idx_tkk1207_query
on tkk1207(ownerid) nosegment;
explain plan for select * from tkk1207 t
where t.ownerid
= 'xxx';
select * from table(dbms_xplan.display());
2. 高锋期数据库运行缓慢,latch: cache buffers chains等待
Oracle使用WHERE C1='' OR C2 IN(SubQuery)的方式会造成索引失效问题,以下是测试示例:
a、将子查询的结果先取出,然后再静态编入到IN()条件;
b、把两个条件的OR,改为UNION
转载请注明原文地址: https://ju.6miu.com/read-666821.html