Oracle查询表空间或数据库的增长量

0    375    2

Tags:

👉 本文共约1124个字,系统预计阅读时间或需5分钟。

简介

在Oracle数据库中,我们有时候在分析一些问题时,需要了解哪一些表空间的数据增长了。我们需要快速定位数据量增长较快的用户表空间,或者在哪一些时间段表空间数据量突然飚增了。

10g或11g

或:

12c或更高版本

或:

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

最近七天数据库的增长情况,这个只是一个估算值。

其它SQL

SYSTEM表空间增量量

不含undo和temp

含undo和temp

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

统计 Oracle 数据库每年数据增长量

统计数据库的规模一般会从两个维度考虑,一个是真实的数据库对象所占的空间,另一个是物理磁盘需要占多少空间。

前者是逻辑对象的数据规模,后者是磁盘上实际的数据文件大小。逻辑对象是存在物理文件中的,文件提前分好了空间,文件内容会等待逻辑对象填满。比如提前分好了一个32GB的表空间,数据没存满前,文件大小不会变,但对象所占的空间是在增长的。

统计数据库数据量大小的 SQL 语句如下:

本人提供Oracle(OCP、OCM)、MySQL(OCP)、PostgreSQL(PGCA、PGCE、PGCM)等数据库的培训和考证业务,私聊QQ646634621或微信db_bao,谢谢!

如果需要统计每年的数据库的数据量的增长量,一种笨办法则是每年统计一次,将结果存下来,多年之后再将数据取出来进行分析。Oracle中并不会记录数据增长的历史,唯一一种可以近似得到数据增长历史的地方是v$datafile视图,dba_* 相关的数据字典都没有存时间。通过v$datafile统计的数据增长量如下:

Oracle查询表空间或数据库的增长量

SQL语句为:

这里有一个问题就是如果数据库的生命周期不完整了,比如经历过数据迁移、resetlog 导致归档日志不再连接,此时 v$datafile 中记录的数据文件创建时间已经被重置,之前的历史记录会丢失。此时数据库相当于重生了,之前的数据文件创建时间都被重置为数据库的第一次打开时间。比如上面的记录 2017 年以前的数据文件增长记录都无法考证了,原因是经历过 resetlog 打开数据库。

Oracle查询表空间或数据库的增长量

参考

https://www.modb.pro/db/521210

https://mp.weixin.qq.com/s/igESMLiAbJjeAtuN3FWmhw

标签:

头像

小麦苗

学习或考证,均可联系麦老师,请加微信db_bao或QQ646634621

您可能还喜欢...

发表回复

嘿,我是小麦,需要帮助随时找我哦
  • 18509239930
  • 个人微信

  • 麦老师QQ聊天
  • 个人邮箱
  • 点击加入QQ群
  • 个人微店

  • 回到顶部
返回顶部