数据库磁盘空间快满了,我想了一个方案来估算表的增长趋  

首先找出库里大于1G的表,作为监视的对象,大约有80个。
我们库里的表是每天一更新。我想在每天更新所有后,记录下监视表的当天的状态,包括表的记录数、表的大小(单位G)、表对应索引大小(单位G),放在一个统计表中。
第二天,再次更新全部表后,再次记录下监视表的状态。如此记录一两周后,再将统计结果分析。
以每个表为单位,算出每天增加的记录数,表增加的大小,表对应索引大小。得到每天的增量。这里表每天大小的增量我觉得还可以用每条记录的最大单位乘以每天表记录数量的增量。也就是通过每条记录每个varchr2占用多少字节,number占用多少字节,date占用多少字节之和,乘以每天新增记录数 n,即可得到每天最大的表的大小增量。再和统计表中的每天表增量对比。
得到一个平均值后,乘以365,即可得到保证一年的使用量,需要新增的磁盘大小。
大家对这个方法发表一下意见,或者大家有更好的方法一下讨论一下。
标签: 暂无标签
bayannur

写了 8 篇文章,拥有财富 110,被 2 人关注

转播转播 分享分享 分享淘帖
回复

使用道具

P6 | 发表于 2011-2-12 18:22:22
写一个procedure,每天检查一下dba_tables即可,生成一个差异表。
比较简单。
回复

使用道具

P4 | 发表于 2011-2-26 09:51:22
既然是大概估计空间的情况,为什么不从表空间的层面看呢。每天看一下各表空间变化的总数不行吗。
回复

使用道具

P4 | 发表于 2011-2-26 11:36:32
回复 refine 的帖子

我想更仔细的查看增长的情况,扩空间要申请写报告,如果只是关注表空间大小怕不详细,客户方面不好交代。
还有沙发的老师说的看dba_tables的记录,我们这是9i,没有每天自动统计信息,很多表的信息都是过时的,这个方法好像不可行。
回复

使用道具

您需要登录后才可以回帖 登录 | 加入社区

本版积分规则

意见
反馈