Heim >Datenbank >MySQL-Tutorial >修复 status 为 unusable 的 index(ORA-01502)

修复 status 为 unusable 的 index(ORA-01502)

WBOY
WBOYOriginal
2016-06-07 14:56:221681Durchsuche

有配置工具使用时, 经常会出现以下错误: ORA-01502: index 'xxx.xxxxx' or partition of such index is in unusable state ,解决方法为——以 DBA 登录,并运行以下脚本即可. 无 -- 请以 DBA 权限登录,并执行-- 将所有 UNUSABLE 状态的 index 修复, rebuild

有配置工具使用时, 经常会出现以下错误: ORA-01502: index 'xxx.xxxxx' or partition of such index is in unusable state,解决方法为——以 DBA 登录,并运行以下脚本即可.
-- 请以 DBA 权限登录,并执行
-- 将所有 UNUSABLE 状态的 index 修复, rebuild 一下即可[Oracle 10g下运行通过]
declare
  -- 指向所有 UNUSABLE 状态的 index 的游标
  cursor c is 
    select index_name, owner 
    from dba_indexes 
    where status='UNUSABLE';
  
  owner dba_indexes.owner%type;
  index_name dba_indexes.index_name%type;
begin
  open c;
  loop 
       fetch c into index_name, owner; 
       exit when c%notfound;
       
       execute immediate 'alter index ' || owner || '.' || index_name || ' rebuild';
  end loop;
  close c;
end;
Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn