oracle重建失效索引

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了oracle重建失效索引相关的知识,希望对你有一定的参考价值。

此脚本首先找到连接用户失效的索引,并在线重建.

create or replace procedure index_rebuild as
  cursor mycur is
    select *
      from user_indexes
     where status = ‘UNUSABLE‘;
  myrec user_indexes%rowtype;
  vsql  varchar(100);
begin
  open mycur;
  while mycur%found
  loop
    fetch mycur
      into myrec;
    dbms_output.put_line(‘index   ‘ || myrec.index_name || ‘  is invalide ‘);
    vsql := ‘alter index ‘ || myrec.index_name || ‘ rebuild online‘;
    dbms_output.put_line(vsql);
    execute immediate vsql;
  end loop;
  close mycur;
end index_rebuild;

以上是关于oracle重建失效索引的主要内容,如果未能解决你的问题,请参考以下文章

oracle数据表分区,truncate或drop后会导致索引失效,除了重建索引有没有更好的快速解决方法?

oracle 索引失效是怎么回事?

oracle联合查询索引失效

oracle分析表,解决索引失效

oracle索引问题,删除再重建索引与索引分析

oracle里,truncate一个分区,能不能保留全局索引