Segment Advisor脚本

10G的Advisor以前没有太关注过,觉悟太晚了,这11G R2都出来了呵呵.

弄一个for tablespace的吧, 就是执行过一遍,太慢了就是,生产库慎行.

variable id number;
variable v_name char;
variable v_tbs char;
accept v_name CHAR prompt 'Please enter the task name';
accept v_tbs char prompt 'Please enter the tablespace name to be analyzed';
declare
name varchar2(100);
descr varchar2(500);
obj_id number;
v_tbs varchar2(100);
begin
name := :v_name;
v_tbs := :v_tbs;

descr := 'Segment Advisor For Tablespace ';
dbms_advisor.create_task(advisor_name => 'Segment Advisor',
task_id => :id,
task_name => name,
task_desc => descr);

dbms_advisor.create_object(task_name => name,
object_type => 'TABLESPACE',
attr1 => v_tbs,
attr2 => null,
attr3 => null,
attr4 => null,
attr5 => null,
object_id => obj_id);

dbms_advisor.set_task_parameter(task_name => name,
parameter => 'recommend_all',
value => 'TRUE');
dbms_advisor.execute_task(name);
end;
/

最后,用下面的看下结果吧. 命令都给出来了,还想咋着,Oracle想的真周到

select segment_owner,segment_name,segment_type,partition_name,allocated_space/1024/1024 "allocate(mb)",TRUNC(reclaimable_space/1024/1024,2) "reclaim(MB)",C3,C2,C1
from table (dbms_space.asa_recommendations())
ORDER BY "reclaim(MB)" DESC;

[@more@]

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/256370/viewspace-1026614/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/256370/viewspace-1026614/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值