zoukankan      html  css  js  c++  java
  • [转] Oracle analyze 命令分析

    转自:http://blog.sina.com.cn/s/blog_682841ba0101bncp.html

    1.analyze table t1 compute statistics for table;  -->user_tables

    (只对表的总体信息进行统计,比如行数多少等,不涉及到表字段)

    2.analyze table t2 compute statistics for all columns;  -->user_tab_columns

    (只会收集表字段信息)

    3.analyze table t3 compute statistics for all indexed columns; -->user_tab_columns

    (只会收集表中索引所在的字段信息)

    4.analyze table t4 compute statistics for all indexes;à user_indexes

    (只收集表索引的信息)

    5.analyze table t5 compute statistics;

    (收集表,表字段,索引的信息)

    另外,可以删除分析数据:

    SQL> analyze table my_table delete statistics;

    SQL> analyze table my_table delete statistics for table for all indexes for all indexed columns;

    例子:

    create table t1 as select * from user_objects;

    create table t2 as select * from user_objects;

    create table t3 as select * from user_objects;

    create table t4 as select * from user_objects;

    create table t5 as select * from user_objects;

    create table t6 as select * from user_objects;

    create unique index pk_t1_idx on t1(object_id);

    create unique index pk_t2_idx on t2(object_id);

    create unique index pk_t3_idx on t3(object_id);

    create unique index pk_t4_idx on t4(object_id);

    create unique index pk_t5_idx on t5(object_id);

    create unique index pk_t6_idx on t6(object_id);

    <</B>刚建完表的时候>

    (1) 查看表的统计信息

    select table_name, num_rows, blocks, empty_blocks

      from user_tables

     where table_name in ('T1', 'T2', 'T3', 'T4', 'T5','T6');

    (2) 查看字段的统计信息

    select table_name,

           column_name,

           num_distinct,

           low_value,

           high_value,

           density

      from user_tab_columns

     where table_name in ('T1', 'T2', 'T3', 'T4','T5','T6');

    (3) 查看索引的统计信息

    select table_name,

           index_name,

           blevel,

           leaf_blocks,

           distinct_keys,

           avg_leaf_blocks_per_key avg_leaf_blocks,

           avg_data_blocks_per_key avg_data_blocks,

           clustering_factor,

           num_rows

      from user_indexes

     where table_name in ('T1', 'T2', 'T3', 'T4', 'T5', 'T6');

    二.执行analyze命令

    analyze table t1 compute statistics for table; --针对表收集信息

    analyze table t2 compute statistics for all columns; --针对表字段收集信息

    analyze table t3 compute statistics for all indexes columns; --收集索引字段信息

    analyze table t4 compute statistics;       --收集表,表字段,索引信息

    analyze table t5 compute statistics for all indexes;         --收集索引信息

    analyze table t6 compute statistics for table for all indexes for all columns;   --收集表,索引,表字段信息

    (1) 表的统计信息

    select table_name, num_rows, blocks, empty_blocks

      from user_tables

     where table_name in ('T1', 'T2', 'T3', 'T4', 'T5','T6');

    (2) 表中字段的统计信息

    select table_name,

           column_name,

           num_distinct,

           low_value,

           high_value,

           density

      from user_tab_columns

     where table_name in ('T1', 'T2', 'T3', 'T4','T5','T6');

    <</B>其中会收集T2的表字段信息,T3是索引所在字段信息,T4表字段信息,T6表字段信息>

     

    (3) 索引的统计信息

    没有变化,说明在创建索引的时候就ORACLE就已经收集相关信息

  • 相关阅读:
    shell 操作钉钉机器人实现告警提醒
    谨慎 mongodb 关于数字操作可能导致类型及精度变化
    数据库如何应对保障大促活动
    SQL Server Alwayson架构下 服务器 各虚拟IP漂移监控告警的功能实现 -1(服务器视角)
    通过 Telegraf + InfluxDB + Grafana 快速搭建监控体系的详细步骤
    MySQL数据库Inception工具学习与测试 笔记
    MongoDB 中数据的替换方法实现 --类Replace()函数功能
    MongoDB 中的【加减乘除】运算
    MySQL索引设计需要考虑哪些因素?
    关于SQL Server 数据库归档的一些思考和改进
  • 原文地址:https://www.cnblogs.com/fengaix6/p/4684188.html
Copyright © 2011-2022 走看看