Oracle 统计信息 到底是不是实时收集的?
小雨不打伞
2013-09-04
[list]
EXEC dbms_stats.gather_table_stats('COREBM','ORD',degree => 4,estimate_percent => null,method_opt => 'for all columns',cascade => TRUE); ] 重新收集统计信息,通过[select * from ord] 查看统计信息,cost: 9 最后一步中, 在删除了所有数据之后,重新收集一遍统计信息,为什么ord表的统计信息没有根据数据库里的数据变回最初的2? |
|
魔力猫咪
2013-09-05
统计信息是由一个任务定时执行的。如果在业务高峰期收集统计信息会引发系统性能问题的。
所以这个缺省时间一般都是深夜,而且采样率也是可以调整的,对超大规模的数据库进行100%采样是不可能的,Oracle提供了从1-100的不同档位进行调节。 |
|
dddpeter
2013-10-28
不是实时手机,一般晚上进行收集,比较耗费资源
|
|
wushuigen
2013-10-29
这个是因为你建表为普通堆表,删除数据但并不会删除已开辟的空间。所以看到的const仍然为9
|