如何在不使用OEM的情况下检查上次在Oracle上运行统计信息的时间

Jac*_*cob 24 oracle statistics sqlplus oracle10g

我想查看上次在Oracle 10g服务器上运行统计信息的时间.我通常会通过OEM做到这一点,但由于无关的原因,OEM已关闭.有什么方法可以使用sqlplus来检查这个吗?如果输出格式合理,那将会非常有用.

Ada*_*sch 29

以下所有数据字典表都有一个LAST_ANALYZED列(根据需要用USER/ALL/DBA替换*:

*_TABLES
*_TAB_PARTITIONS
*_TAB_SUBPARTITIONS
*_INDEXES
*_IND_PARTITIONS
*_IND_SUBPARTITIONS
Run Code Online (Sandbox Code Playgroud)

(直方图领域还有很多,但我不会那么深.)

相反,ALL_TAB_MODIFICATIONS显示插入/更新/删除的行(或截断表/分区/子分区的时间戳),因为它收集了优化程序统计信息.

  • 在我的设置中,统计数据仅针对一个用户运行,因此这非常有效.我使用的SQL(以该用户身份登录)是:SELECT TO_CHAR(last_analyzed,'yyyy/mm/dd hh:mi:ss am')as last_analyzed FROM user_tables where table_name = <table_in_my_schema> (2认同)