Oracle Enterprise Management Console 中的菜单上“分析”有什么用?
怎么用? 它能用来优化数据库或者找出致的优化的地方么?
版本 Oracle9i 。

解决方案 »

  1.   

    分析 Analyze就是获取数据库中相关对象的一些统计信息,提供给Oracle优化器,
    以便采用CBO优化方式时选择更好的SQL执行路径。
      

  2.   

    很少用OEM都是直接在sqlplus中输入analyze table test.tt compute statistics for table for all indexes;
      

  3.   

    DBMS_STATS是Oracle在8i的时候引进的新的Package,用来取代Analyze,为基于成本的优化器提供统计数据。  1.  对于分区表,建议使用DBMS-STATS,而不是使用Analyze语句。
    a)  可以并行进行,对多个用户,多个Table
    b)  可以得到整个分区表的数据和单个分区的数据。
    c)  可以在不同级别上Compute Statistics:单个分区,子分区,全表,所有分区
    d)  可以倒出统计信息
    e)  可以用户自动收集统计信息
    2.  DBMS_STATS的缺点
    a)  不能Validate Structure
    b)  不能收集CHAINED ROWS, 不能收集CLUSTER TABLE的信息,这两个仍旧需要使用Analyze语句。
    c)  DBMS_STATS  默认不对索引进行Analyze,因为默认Cascade是False,需要手工指定为True
    3.  对于oracle 9里面的External Table,Analyze不能使用,只能使用DBMS_STATS来收集信息。