怎么监控oracle数据库表和表空间的现状

declare

  unf   number;

  unfb  number;

  fs1   number;

  fs1b  number;

  fs2   number;

  fs2b  number;

  fs3  number;

  fs3b  number;

  fs4   number;

  fs4b  number;

  full  number;

  fullb number;

begin

  dbms_space.space_usage('&1',

                         '&2',

                         'TABLE',

                         unf,

                         unfb,

                         fs1,

                         fs1b,

                         fs2,

                         fs2b,

                         fs3,

                         fs3b,

                         fs4,

                         fs4b,

                         full,

                         fullb);

  dbms_output.put_line('unformatted_blocks:' || unf);

  dbms_output.put_line('full_blocks(0%     free):' || full);

  dbms_output.put_line('fs1_blocks(0-25%   free):' || fs1);

  dbms_output.put_line('fs2_blocks(25-50%  free):' || fs2);

  dbms_output.put_line('fs3_blocks(50-75%  free):' || fs3);

  dbms_output.put_line('fs4_blocks(75-100% free):' || fs4);

end;

/
2. 表空间的使用历史记录(只输出了每天的第一次统计结果)
select b.name,
       a.rtime,
       a.tablespace_usedsize,
       a.tablespace_size,
       round(100 * a.tablespace_usedsize / a.tablespace_size) used_percent
  from dba_hist_tbspc_space_usage a,
       (select t2.name,
               min(rtime) rtime,
               min(tablespace_id) tablespace_id
          from dba_hist_tbspc_space_usage t1
         inner join v$tablespace t2 on t1.tablespace_id = t2.TS#
         where t2.NAME = upper('&1')
         group by name, substr(rtime,1,10)
) b
 where a.tablespace_id = b.tablespace_id
   and a.rtime = b.rtime
order by a.rtime;
3. 表的剩余空间预测
select * from table(dbms_space.OBJECT_GROWTH_TREND('ECC_CC', 'YTKC_ORDERRELEVANCE', 'TABLE')
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值