运维联盟俱乐部

 找回密码
 立即注册
查看: 1532|回复: 0

[日常管理] tablespace_hist_usage

[复制链接]
  • TA的每日心情
    开心
    2023-8-9 11:05
  • 发表于 2020-10-28 23:00:53 | 显示全部楼层 |阅读模式

    11g
    1. SELECT a.snap_id
    2.         ,c.tablespace_name ts_name
    3.         ,to_char(to_date(a.rtime, 'mm/dd/yyyy hh24:mi:ss'), 'yyyy-mm-dd hh24:mi') rtime
    4.         ,round(a.tablespace_size * c.block_size / 1024 / 1024, 2) ts_size_mb
    5.         ,round(a.tablespace_usedsize * c.block_size / 1024 / 1024, 2) ts_used_mb
    6.         ,round((a.tablespace_size - a.tablespace_usedsize) * c.block_size / 1024 / 1024, 2) ts_free_mb
    7.         ,round(a.tablespace_usedsize / a.tablespace_size * 100, 2) pct_used
    8. FROM dba_hist_tbspc_space_usage a
    9.         ,(
    10.                 SELECT tablespace_id
    11.                         ,substr(rtime, 1, 10) rtime
    12.                         ,max(snap_id) snap_id
    13.                 FROM dba_hist_tbspc_space_usage nb
    14.                 GROUP BY tablespace_id
    15.                         ,substr(rtime, 1, 10)
    16.                 ) b
    17.         ,dba_tablespaces c
    18.         ,v$tablespace d
    19. WHERE a.snap_id = b.snap_id
    20.         AND a.tablespace_id = b.tablespace_id
    21.         AND a.tablespace_id = d.TS#
    22.         AND d.NAME = c.tablespace_name
    23.         AND to_date(a.rtime, 'mm/dd/yyyy hh24:mi:ss') >= sysdate - 30
    24.         AND d.tablespace_name='&TS_NAME'
    25. ORDER by to_date(a.rtime, 'mm/dd/yyyy hh24:mi:ss');
    复制代码
    12c
    1. SELECT a.snap_id
    2.         ,a.con_id
    3.         ,e.name pdbname
    4.         ,c.tablespace_name ts_name
    5.         ,to_char(to_date(a.rtime, 'mm/dd/yyyy hh24:mi:ss'), 'yyyy-mm-dd hh24:mi') rtime
    6.         ,round(a.tablespace_size * c.block_size / 1024 / 1024, 2) ts_size_mb
    7.         ,round(a.tablespace_usedsize * c.block_size / 1024 / 1024, 2) ts_used_mb
    8.         ,round((a.tablespace_size - a.tablespace_usedsize) * c.block_size / 1024 / 1024, 2) ts_free_mb
    9.         ,round(a.tablespace_usedsize / a.tablespace_size * 100, 2) pct_used
    10. FROM cdb_hist_tbspc_space_usage a
    11.         ,(
    12.                 SELECT tablespace_id
    13.                         ,nb.con_id
    14.                         ,substr(rtime, 1, 10) rtime
    15.                         ,max(snap_id) snap_id
    16.                 FROM dba_hist_tbspc_space_usage nb
    17.                 GROUP BY tablespace_id
    18.                         ,nb.con_id
    19.                         ,substr(rtime, 1, 10)
    20.                 ) b
    21.         ,cdb_tablespaces c
    22.         ,v$tablespace d
    23.         ,V$CONTAINERS e
    24. WHERE a.snap_id = b.snap_id
    25.         AND a.tablespace_id = b.tablespace_id
    26.         AND a.con_id = b.con_id
    27.         AND a.con_id = c.con_id
    28.         AND a.con_id = d.con_id
    29.         AND a.con_id = e.con_id
    30.         AND a.tablespace_id = d.TS#
    31.         AND d.NAME = c.tablespace_name
    32.         AND to_date(a.rtime, 'mm/dd/yyyy hh24:mi:ss') >= sysdate - 30
    33. ORDER BY a.CON_ID
    34.         ,a.tablespace_id
    35.         ,to_date(a.rtime, 'mm/dd/yyyy hh24:mi:ss') DESC;
    复制代码
    查看数据库历史增长情况(不含undo和temp)
    1. WITH tmp
    2. AS (
    3.         SELECT rtime
    4.                 ,sum(tablespace_usedsize_kb) tablespace_usedsize_kb
    5.                 ,sum(tablespace_size_kb) tablespace_size_kb
    6.         FROM (
    7.                 SELECT rtime
    8.                         ,e.tablespace_id
    9.                         ,(e.tablespace_usedsize) * (f.block_size) / 1024 tablespace_usedsize_kb
    10.                         ,(e.tablespace_size) * (f.block_size) / 1024 tablespace_size_kb
    11.                 FROM dba_hist_tbspc_space_usage e
    12.                         ,dba_tablespaces f
    13.                         ,v$tablespace g
    14.                 WHERE e.tablespace_id = g.TS#
    15.                         AND f.tablespace_name = g.NAME
    16.                         AND f.contents NOT IN (
    17.                                 'TEMPORARY'
    18.                                 ,'UNDO'
    19.                                 )
    20.                 )
    21.         GROUP BY rtime
    22.         )
    23. SELECT tmp.rtime
    24.         ,tablespace_usedsize_kb
    25.         ,tablespace_size_kb
    26.         ,(
    27.                 tablespace_usedsize_kb - LAG(tablespace_usedsize_kb, 1, NULL) OVER (
    28.                         ORDER BY tmp.rtime
    29.                         )
    30.                 ) AS DIFF_KB
    31. FROM tmp
    32.         ,(
    33.                 SELECT max(rtime) rtime
    34.                 FROM tmp
    35.                 GROUP BY substr(rtime, 1, 10)
    36.                 ) t2
    37. WHERE t2.rtime = tmp.rtime;
    复制代码
    查看数据库历史增长情况(含undo和temp)
    1. WITH tmp
    2. AS (
    3.         SELECT min(rtime) rtime
    4.                 ,sum(tablespace_usedsize_kb) tablespace_usedsize_kb
    5.                 ,sum(tablespace_size_kb) tablespace_size_kb
    6.         FROM (
    7.                 SELECT rtime
    8.                         ,e.tablespace_id
    9.                         ,(e.tablespace_usedsize) * (f.block_size) / 1024 tablespace_usedsize_kb
    10.                         ,(e.tablespace_size) * (f.block_size) / 1024 tablespace_size_kb
    11.                 FROM dba_hist_tbspc_space_usage e
    12.                         ,dba_tablespaces f
    13.                         ,v$tablespace g
    14.                 WHERE e.tablespace_id = g.TS#
    15.                         AND f.tablespace_name = g.NAME
    16.                 )
    17.         GROUP BY rtime
    18.         )
    19. SELECT tmp.rtime
    20.         ,tablespace_usedsize_kb
    21.         ,tablespace_size_kb
    22.         ,(
    23.                 tablespace_usedsize_kb - LAG(tablespace_usedsize_kb, 1, NULL) OVER (
    24.                         ORDER BY tmp.rtime
    25.                         )
    26.                 ) AS DIFF_KB
    27. FROM tmp
    28.         ,(
    29.                 SELECT min(rtime) rtime
    30.                 FROM tmp
    31.                 GROUP BY substr(rtime, 1, 10)
    32.                 ) t2
    33. WHERE t2.rtime = tmp.rtime;
    复制代码
    列出相关段在快照时间内得历史增长情况
    1. WITH tmp
    2. AS (
    3.         SELECT min(rtime) rtime
    4.                 ,sum(tablespace_usedsize_kb) tablespace_usedsize_kb
    5.                 ,sum(tablespace_size_kb) tablespace_size_kb
    6.         FROM (
    7.                 SELECT rtime
    8.                         ,e.tablespace_id
    9.                         ,(e.tablespace_usedsize) * (f.block_size) / 1024 tablespace_usedsize_kb
    10.                         ,(e.tablespace_size) * (f.block_size) / 1024 tablespace_size_kb
    11.                 FROM dba_hist_tbspc_space_usage e
    12.                         ,dba_tablespaces f
    13.                         ,v$tablespace g
    14.                 WHERE e.tablespace_id = g.TS#
    15.                         AND f.tablespace_name = g.NAME
    16.                 )
    17.         GROUP BY rtime
    18.         )
    19. SELECT tmp.rtime
    20.         ,tablespace_usedsize_kb
    21.         ,tablespace_size_kb
    22.         ,(
    23.                 tablespace_usedsize_kb - LAG(tablespace_usedsize_kb, 1, NULL) OVER (
    24.                         ORDER BY tmp.rtime
    25.                         )
    26.                 ) AS DIFF_KB
    27. FROM tmp
    28.         ,(
    29.                 SELECT min(rtime) rtime
    30.                 FROM tmp
    31.                 GROUP BY substr(rtime, 1, 10)
    32.                 ) t2
    33. WHERE t2.rtime = tmp.rtime;
    复制代码


    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    运维联盟俱乐部 ( 冀ICP备19036648号 )

    GMT+8, 2024-5-17 14:42 , Processed in 0.061251 second(s), 21 queries , Gzip On.

    Powered by Discuz! X3.4

    © 2001-2023 Discuz! Team.

    快速回复 返回顶部 返回列表