概述

很多时候我们都需要估算oracle数据库及数据库对象历史增长情况,来评估是否需要扩容,扩多少。下面介绍一下怎么通过AWR来查找一段时间内,数据库及数据库段对象(堆表、索引)等的空间增长信息。


DBA_HIST_SEG_STAT

在Oracle 10g开始awr自动负载仓库引入了dba_hist_seg_stat视图,该视图记录了快照时间内segment-level段级的历史统计信息:

DBA_HIST_SEG_STAT displays historical information about segment-level statistics. This view captures the top segments based on a set of criteria and captures information from V$SEGSTAT. The total value is the value of the statistics since instance startup. The delta value is the value of the statistics from the BEGIN_INTERVAL_TIME to the END_INTERVAL_TIME in the DBA_HIST_SNAPSHOT view.

查看数据库历史增长情况

此处是通过计算数据库所有表空间的历史增长情况来计算数据库历史情况。

1、不含undo和temp

with tmp as(select rtime,sum(tablespace_usedsize_kb) tablespace_usedsize_kb,sum(tablespace_size_kb) tablespace_size_kbfrom (select rtime,e.tablespace_id,(e.tablespace_usedsize) * (f.block_size) / 1024 tablespace_usedsize_kb,(e.tablespace_size) * (f.block_size) / 1024 tablespace_size_kbfrom dba_hist_tbspc_space_usage e,dba_tablespaces f,v$tablespace gwhere e.tablespace_id = g.TS#and f.tablespace_name = g.NAMEand f.contents not in ('TEMPORARY','UNDO'))group by rtime)select tmp.rtime,tablespace_usedsize_kb,tablespace_size_kb,(tablespace_usedsize_kb -LAG(tablespace_usedsize_kb, 1, NULL) OVER(ORDER BY tmp.rtime)) AS DIFF_KBfrom tmp,(select max(rtime) rtimefrom tmpgroup by substr(rtime, 1, 10)) t2where t2.rtime = tmp.rtime;

2、含undo和temp

with tmp as(select min(rtime) rtime,sum(tablespace_usedsize_kb) tablespace_usedsize_kb,sum(tablespace_size_kb) tablespace_size_kbfrom (select rtime,e.tablespace_id,(e.tablespace_usedsize) * (f.block_size) / 1024 tablespace_usedsize_kb,(e.tablespace_size) * (f.block_size) / 1024 tablespace_size_kbfrom dba_hist_tbspc_space_usage e,dba_tablespaces f,v$tablespace gwhere e.tablespace_id = g.TS#and f.tablespace_name = g.NAME)group by rtime)select tmp.rtime,tablespace_usedsize_kb,tablespace_size_kb,(tablespace_usedsize_kb -LAG(tablespace_usedsize_kb, 1, NULL) OVER(ORDER BY tmp.rtime)) AS DIFF_KBfrom tmp,(select min(rtime) rtimefrom tmpgroup by substr(rtime, 1, 10)) t2 where t2.rtime = tmp.rtime

列出相关段对象在快照时间内的使用空间的历史变化信息

select obj.owner, obj.object_name, to_char(sn.BEGIN_INTERVAL_TIME, 'RRRR-MON-DD') start_day, sum(a.db_block_changes_delta) block_increase from dba_hist_seg_stat a, dba_hist_snapshot sn, dba_objects obj where sn.snap_id = a.snap_id and obj.object_id = a.obj# and obj.owner not in ('SYS', 'SYSTEM') and end_interval_time between to_timestamp('01-MAY-2019', 'DD-MON-RRRR') and to_timestamp('05-MAY-2019', 'DD-MON-RRRR') group by obj.owner, obj.object_name, to_char(sn.BEGIN_INTERVAL_TIME, 'RRRR-MON-DD') order by obj.owner, obj.object_name;

后面会分享更多devops和DBA方面的内容,感兴趣的朋友可以关注一下~

历史快照_实用脚本--合理估算oracle数据库及数据库对象历史增长情况相关推荐

  1. lepus监控oracle数据库_实用脚本一键监控oracle数据库索引使用状况

    概述 我们在维护业务系统时,可能会建立很多索引,那么这些索引的使用到底怎么样,是否有些索引一直都没有用到过,那么oracle 是如何监控索引的使用状况,是否可以清除它们? 监控索引 一般有两种方式: ...

  2. mysql连接池永驻_【学习笔记】Oracle连接池 数据库常驻连接池(Database Resident Connection Pool)案例介绍...

    天萃荷净 分享一篇关于应用程序与Oracle数据库连接的连接方法介绍,数据库常驻连接池(Database Resident Connection Pool)案例介绍 一.介绍常驻连接池(Databas ...

  3. Oracle查询1个月内数据增长情况

    查询表空间每日增长量 Oracle 12C 可使用如下语句查看近一个月内每日数据增长情况: SELECT a.snap_id, a.con_id, e.name pdbname, c.tablespa ...

  4. 【AWR】调整AWR数据采样时间间隔及历史快照保留时间

    1.AWR默认的采样间隔和历史快照保留时间 默认是保留七天,采集间隔是1小时,这个信息可以从DBA_HIST_WR_CONTROL视图中获得. sys@ora10g> col SNAP_INTE ...

  5. oracle12 快照保存时间,【AWR】调整AWR数据采样时间间隔及历史快照保留时间

    1.AWR默认的采样间隔和历史快照保留时间 默认是保留七天,采集间隔是1小时,这个信息可以从DBA_HIST_WR_CONTROL视图中获得. sys@ora10g> col SNAP_INTE ...

  6. 12c表空间不存在_一文看懂Oracle查询表空间的每日增长量和历史情况统计

    概述 今天主要总结一下Oracle表空间每日增长和历史情况统计的一些脚本,仅供参考. 11g统计表空间的每日增长量 SELECT a.snap_id, c.tablespace_name ts_nam ...

  7. oracle估算数据增长,如何估算oracle 数据库,数据库对象历史增长情况

     如何估算oracle 数据库,数据库对象历史增长情况 -----最近七天数据库的增长情况,这个只是一个估算值. select  sum(space_used_total)/1024/1024/1 ...

  8. Oracle数据库实用脚本

    以下是Maclean.Liu所编写或收集的Oracle数据库实用脚本的列表,在这里分享一下: Script:收集Enterprise Manager Grid Control/Agent/Databa ...

  9. Oracle、Mysql数据库编程开发基本操作命令语法脚本_基础篇(入门级)

    Oracle.Mysql数据库开发基本操作命令语法脚本_基础篇(入门级) 文章目录 Oracle.Mysql数据库开发基本操作命令语法脚本_基础篇(入门级) 一.数据库中常用的字段类型 二.操作数据库 ...

最新文章

  1. PyTorch 安装和基本运算— Tensor 的数据类型(浮点型、整型、随机浮点型等)、基本运算(绝对值、求和、裁剪、求商、求积、求幂等)、Tensor 与 Numpy 转换
  2. EOS能不能囤?一篇文章搞懂EOS优缺点
  3. Firefox3 RC1颁布各种新特征发扬阐发更平定
  4. 《From Java To Kotlin》-Kotlin与Java的简单对比
  5. Tensorflow学习笔记2:About Session, Graph, Operation and Tensor
  6. python实现编译器连接器_Python连接器
  7. Kafka学习-入门
  8. 很认真地聊一聊程序员的自我修养
  9. final关键字_深入分析Java中的final关键字
  10. Java阶段2-02JS:08ECMAScript BOM DOM:
  11. pyjion python3.6_[新闻] CPython / 微软 Pyjion / IBM Python+OMR
  12. 什么是接口?如何定义接口?如何实现接口?
  13. 算法基础部分4-深度优先搜索
  14. 纯Java文件操作工具,支持文件、文件夹的复制、删除、移动
  15. 热血传说复古传奇老显示服务器维护,《复古传奇之热血传说》新系列地图,新的装备即将出现...
  16. 字节测试开发面试题总结
  17. 淘宝数据可视化大屏案例(Hadoop实验)
  18. 每日3词 2021-03-08 【reference】【print】【coding】
  19. 为什么很多人吐槽谭浩强的C语言程序设计?
  20. IP地址划分【分类:A类 B类 C类 D类 E类】

热门文章

  1. 大剑无锋之linux如何查看系统开启了那些端口【面试推荐】
  2. JVM从入门到精通(三):热加载的实现原理,Java内存模型,缓存行,指令重排,合并写技术等
  3. 【数据库】MySQL创建视图(CREATE VIEW)
  4. 【Java文件操作(三)】递归复制文件夹内所有文件
  5. 网络协议之:socket协议详解之Datagram Socket
  6. java中DelayQueue的使用
  7. java并发中CountDownLatch的使用
  8. Libra教程之:Libra testnet使用指南
  9. Leet Code OJ 27. Remove Element [Difficulty: Easy]
  10. 电子病历系统厂家排名_指挥大厅音响系统方案,会议话筒厂家-麦纳电子科技