何时以及如何为Oracle,版本9及更高版本执行表统计信息收集?您将如何收集大型数据库的统计数据,其中统计数据收集将与"营业时间"发生冲突.
我不同意在有大量删除或插入后应始终重建统计信息.一如既往,这取决于.在数据仓库的情况下,重新构建物化视图时,您将执行大量删除和插入操作,但数据的基本结构不会更改.
如果表的内容发生重大变化,您只需要重新计算表的统计数据.这并没有必然大量删除或插入后的意思,而是当删除,插入或更新发生重大变化相对于可能的执行计划的内容.
如果要截断表并重建(这将重置统计信息),而不是昂贵的统计计算,那么在重建表之前截断并恢复统计信息之前,最好先存储统计信息.
要保存您使用的统计信息的当前视图:
dbms_stats.export_table_stats
然后使用以下方法恢复它们:
dbms_stats.import_table_stats
(存在用于相应的程序schema
和database
.)