收集用户所有索引统计信息的脚本-支持断点续作的功能

热度 1已有 1188 次阅读2014-2-25 15:59 | create, insert, where, 断点, 统计

可以在表中加入sysdate 记录时间

--建表语句
create table already_analyze_indexes
as
select t.owner as index_owner,
t.index_name,
t.table_owner,
t.table_name
from DBA_indexes t
where 1=2
--循环脚本
declare
v_owner varchar2(200) :='SCOTT'; -- 指定要分析的索引名
begin
for r in (select t.owner,t.index_name,t.table_owner,t.table_name
from dba_indexes t
where not exists
(select 1
from already_analyze_indexes a
where t.index_name = a.index_name
and t.owner=a.index_owner
)
and t.owner=nvl(v_owner,t.owner)
and t.owner not in ('SYS') )
loop
insert into already_analyze_indexes
values (r.owner,r.index_name,r.table_owner,r.table_owner);
dbms_stats.gather_index_stats(ownname=>r.owner,
indname=>r.index_name);
end loop ;
end ;

路过

鸡蛋

鲜花

握手
1

雷人

刚表态过的朋友 (1 人)

发表评论 评论 (1 个评论)

回复 cui3093 2014-6-8 22:43
老师就是高啊,膜拜

facelist

您需要登录后才可以评论 登录 | 加入社区

他的关注

暂无数据

他的粉丝

暂无数据
意见
反馈