合 在Oracle中,当收集表的统计信息时应该注意哪些问题
关于收集统计信息需要注意以下几点:
① 对于数据量不大的OLTP类型的系统,建议使用自动收集统计信息,并对一些特殊的大表写JOB定时收集统计信息。如果是数据量很大的OLAP或者DSS系统,那么建议DBA自己写JOB脚本来收集统计信息。
② 在导入大量数据后应及时收集统计信息后才能进行相关的后续业务处理(包括查询和修改),否则可能会由于实际数据量和统计信息里记录的数据量存在巨大差异而导致CBO选择错误的执行计划。
③ 全局临时表默认不能收集统计信息,在生成执行计划时采用动态采样比较好。
④ 对于某些新上线或新迁移的系统,建议进行全库收集一次统计信息。
⑤ 建议及时对包含日期型字段的表收集统计信息,避免出现谓词越界现象。