zoukankan      html  css  js  c++  java
  • [bbk5307]第76集 第9章 数据库性能维护 03

    /*

      Oracle optimizer 执行选择方式原理分析

    */

    select * from emp where empno=7369;

    oracle在执行查询计划的时候,并不是说要执行一次全表扫描和一次索引扫描之后,来决定到底是走哪一条路?而是通过数据字典里的统计数据信息,来分析判断到底是走那一条执行计划.

    |-full table

    |-index scan

    data_table---> num_rows(10000)-1/10000

            num_rows(10000)-1/2

    SQL> create table emp1 as select * from emp;
    
    Table created.
    
    SQL> select table_name,num_rows from user_tables;
    
    TABLE_NAME                       NUM_ROWS
    ------------------------------ ----------
    C_DEPT                                  0
    C_EMP                                   0
    T                                     107
    M                                       3
    EMP                                   107
    DEPT                                  115
    LOG                                  1249
    LOG_LW                               1438
    EMP1
    
    9 rows selected.
    
    SQL> select count(*) from emp1;
    
      COUNT(*)
    ----------
           107
    
    SQL> analyze table emp1 compute statistics;
    
    Table analyzed.
    
    SQL> select table_name,num_rows from user_tables;
    
    TABLE_NAME                       NUM_ROWS
    ------------------------------ ----------
    C_DEPT                                  0
    C_EMP                                   0
    T                                     107
    M                                       3
    EMP                                   107
    DEPT                                  115
    LOG                                  1249
    LOG_LW                               1438
    EMP1                                  107
    
    9 rows selected.
    表统计数据分析

     收集统计信息命令

    analyze table emp1 compute statistics

    有关表的统计信息:dba_tables

    有关索引的统计信息:dba_indexes

    有关列的统计信息:dba_tab_col_statistics

    oracle 10g-11g之后的版本可以分析oracle本身对象的统计指标信息,以及操作系统的通知指标信息,从而能够给我们提供更好的执行计划.

    Optimizer Statistics Collection

    • SQL performance tuning:Depends on collection of accurate statistics
    • Optimizer statistics:
      • -Object statistics
      • -Operating system statistics
    • Ways to collect statistics:
      • -Automatically:Automatic Maintenance Tasks
      • -Manually:DBMS_STATS package
      • -By setting database initialization parameters
      • -By importing statistics from another database
  • 相关阅读:
    C#的访问修饰符
    C#的数据类型
    iOS--小结系列八(继续)
    ios--小结系列八 控制器管理
    ios--小结系列八 程序启动原理
    ios--小结系列七 通知机制
    ios--小结系列六继续-UITableViewCell
    ios--小结系列六
    ios--小结系列五
    ios--小结系列四
  • 原文地址:https://www.cnblogs.com/arcer/p/3115528.html
Copyright © 2011-2022 走看看