如何知道Oracle数据库中的统计信息是最新的?

如何知道Oracle数据库中的统计信息是最新的?,oracle,oracle12c,database-performance,sql-tuning,Oracle,Oracle12c,Database Performance,Sql Tuning,如何知道统计数据是最新的,有没有办法找到上次统计数据是何时计算的 我是否需要只查看dba_选项卡_statistics视图中的stale_stats和last_analyzed列?您可以在XXX_表视图(例如dba_表、USER_表、ALL_表)中找到这一点。您要查找的列是最后一次分析的,例如 SELECT OWNER, TABLE_NAME, LAST_ANALYZED FROM USER_TABLES 是的,这是通常的处理方法(最后一次分析的也可以在所有表中找到)。你对你在那里看到的信

如何知道统计数据是最新的,有没有办法找到上次统计数据是何时计算的


我是否需要只查看dba_选项卡_statistics视图中的stale_stats和last_analyzed列?

您可以在
XXX_表
视图(例如dba_表、USER_表、ALL_表)中找到这一点。您要查找的列是最后一次分析的,例如

SELECT OWNER, TABLE_NAME, LAST_ANALYZED
  FROM USER_TABLES

是的,这是通常的处理方法(
最后一次分析的
也可以在
所有表中找到)。你对你在那里看到的信息不满意吗?我不确定这是否是唯一的方法@GMB因为它被标记为12c,除非您更改了默认配置,否则Oracle有一个作业,它可以在一夜之间自动收集它判断为具有过时统计信息的任何表上的统计信息。除非您的表的使用模式不适用于该作业(即,在收集统计数据时,一个临时表在夜间是空的,作为白天ETL运行的一部分,它加载了数百万行),否则您可能不需要过度关注这一点。