• 表空间、数据文件增长情况


     
     
    --表空间使用量


    select t.*
      from (select d.tablespace_name "tablespace_name",
                   space "sum_space(G)",
                   space - nvl(free_space, 0) "used_space(G)",
                   round((1 - nvl(free_space, 0) / space) * 100, 2) "used_rate(%)",
                   free_space "free_space(M)"
              from (select tablespace_name,
                           round(sum(bytes) / (1024 * 1024 * 1024), 3) space
                      from dba_data_files
                     group by tablespace_name) d,
                   (select tablespace_name,
                           round(sum(bytes) / (1024 * 1024 * 1024), 3) free_space
                      from dba_free_space
                     group by tablespace_name) f
             where d.tablespace_name = f.tablespace_name(+)
            union all
            select d.tablespace_name,
                   space "sum_space(m)",
                   used_space "used_space(m)",
                   round(nvl(used_space, 0) / space * 100, 2) "used_rate(%)",
                   space - used_space "free_space(m)"
              from (select tablespace_name,
                           round(sum(bytes) / (1024 * 1024 * 1024), 3) space
                      from dba_temp_files
                     group by tablespace_name) d,
                   (select tablespace,
                           round(sum(blocks * 8192) / (1024 * 1024 * 1024), 3) used_space
                      from v$sort_usage
                     group by tablespace) f
             where d.tablespace_name = f.tablespace(+)) t
     order by "used_rate(%)" desc;
     
     
    --单个表空间的增长情况,以 小时 为 粒度
    select t3.tablespace_id "tablespace_id",
           t3.name  "tablespace_name",
           t3.full_size "full_size(M)",
           t3.used_size "used_size(M)",
           t3.used_size / t3.full_size * 100 "used_ratio(%)",
           to_char(to_date(t3.db_time, 'mm-dd-yyyy hh24:mi:ss'),
                   'yyyy-mm-dd hh24:mi:ss') "time"
      from (select distinct t1.tablespace_id,
                            t2.name,
                            t1.tablespace_size * 8192 / 1024 / 1024 full_size,
                            t1.tablespace_usedsize * 8192 / 1024 / 1024 used_size,
                            t1.rtime db_time
              from dba_hist_tbspc_space_usage t1, v$tablespace t2
             where t1.tablespace_id = t2.ts#
             and t2.name=upper('&tbs_name')
             order by t1.rtime desc) t3;


    --使用绑定变量

       --声明绑定变量
    var tbs_name varchar2(20);

       --绑定变量赋值
    exec :tbs_name :='users';

       --运用绑定变量
    select t3.tablespace_id "tablespace_id",
               t3.name  "tablespace_name",
               t3.full_size "full_size(M)",
               t3.used_size "used_size(M)",
               t3.used_size / t3.full_size * 100 "used_ratio(%)",
               to_char(to_date(t3.db_time, 'mm-dd-yyyy hh24:mi:ss'),
                       'yyyy-mm-dd hh24:mi:ss') "time"
          from (select distinct t1.tablespace_id,
                                t2.name,
                               t1.tablespace_size * 8192 / 1024 / 1024 full_size,
                               t1.tablespace_usedsize * 8192 / 1024 / 1024 used_size,
                               t1.rtime db_time
                 from dba_hist_tbspc_space_usage t1, v$tablespace t2
                where t1.tablespace_id = t2.ts#
                and t2.name=upper(:tbs_name)
       order by t1.rtime desc) t3;

              
    --数据文件的增长情况

  • 相关阅读:
    C#事件解析
    VB 正则表达式应用
    vb.net 2进制、8进制、10进制、16进制...各种进制间的轻松转换
    .net 中的委托(delegate)的使用和原理
    什么是Color LUT/Color Map
    Java怀旧:About left/right shift, negative value representation and signextended(while shifting)
    Eclipse Tips
    Setup KGDB
    Java怀旧:foreach version loop, Changes to iteration variable doesn't take effect
    Java怀旧:break <label> & continue <label>,break <label>相当于简易的goto了,凑活用了
  • 原文地址:https://www.cnblogs.com/iyoume2008/p/6108207.html
Copyright © 2020-2023  润新知