ホームページ >データベース >mysql チュートリアル >修复 status 为 unusable 的 index(ORA-01502)

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

WBOY
WBOYオリジナル
2016-06-07 14:56:221683ブラウズ

有配置工具使用时, 经常会出现以下错误: 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;
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。