<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    Neil的備忘錄

    just do it
    posts - 66, comments - 8, trackbacks - 0, articles - 0

    Create statistics

    Since Oracle 8i the Cost Based Optimizer (CBO) is the preferred optimizer for Oracle.
    In order to make good use of the CBO, you need to create statistics for the data in the database. There are several options to create statistics.

    Analyze command

    The ANALYZE command is available for all versions of Oracle, however to obtain faster and better statistics use the procedures supplied - in 7.3.4 and 8.0 DBMS_UTILITY.ANALYZE_SCHEMA,
    and in 8i and above - DBMS_STATS.GATHER_SCHEMA_STATS The analyze table can be used to create statistics for 1 table, index or cluster.
    Syntax:
    ANALYZE table tableName {compute|estimate|delete) statistics options
    ANALYZE table indexName {compute|estimate|delete) statistics options
    ANALYZE cluster clusterName {compute|estimate|delete) statistics options

    Code examples 

    ANALYZE table scott compute statistics;
    ANALYZE table scott estimate statistics sample 25 percent;
    ANALYZE table scott estimate statistics sample 1000 rows;
    analyze index sc_idx compute statistics;
    analyze index sc_idx validate structure;

    DBMS_UTILITY.ANALYZE_SCHEMA

    With DBMS_UTILITY.ANALYZE_SCHEMA you can gather all the statistics for all the tables, clusters and indexes of a schema.
    Code examples
    exec DBMS_UTILITY.ANALYZE_SCHEMA('SCOTT','COMPUTE');
    exec DBMS_UTILITY.ANALYZE_SCHEMA('SCOTT','ESTIMATE', estimate_rows =>
    1000);
    exec DBMS_UTILITY.ANALYZE_SCHEMA('SCOTT','ESTIMATE', estimate_percent
    => 25);
    exec DBMS_UTILITY.ANALYZE_SCHEMA('SCOTT','DELETE');
    Note: It's also possible to analyze the whole database with the DBMS_UTILITY.ANALYZE_DATABASE('COMPUTE'); command.

    DBMS_STATS.GATHER_SCHEMA_STATS

    From Oracle 8i the DBMS_STATS package is the preferred method Oracle list a number of benefits to using it including parallel execution, long term storage of statistics and transfer of statistics between servers. Once again, it follows a similar format to the other methods:
    Syntax:
    exec DBMS_STATS.GATHER_SCHEMA_STATS(ownname,estimate_percent, block_sample , method_opt,degree,granularity,cascade,stattab, statid,options,statown ,no_invalidate, gather_temp,gather_fixed);
    Code examples:

    exec
    DBMS_STATS.GATHER_SCHEMA_STATS('SCOTT',DBMS_STATS.AUTO_SAMPLE_SIZE);
    exec
    DBMS_STATS.GATHER_SCHEMA_STATS(ownname=>'SCOTT'
    ,estimate_percent=>DBMS_STATS.AUTO_SAMPLE_SIZE);
    EXEC DBMS_STATS.gather_schema_stats(ownname => 'SCOTT',
    estimate_percent => 25);
    EXEC DBMS_STATS.gather_table_stats('SCOTT', 'EMPLOYEES');
    EXEC DBMS_STATS.gather_index_stats('SCOTT', 'EMPLOYEES_PK');

    exec DBMS_STATS.DELETE_SCHEMA_STATS('SCOTT');

    Note: It's also possible to gather statistics for the whole database with the DBMS_STATS.gather_database_stats; command.

    Transfering statistics between database.

    It can be very handy to use production statistics on your development database, so that you can forecast the optimizer behavior.

    You can do this the following way:

    1. Create the statistics table.
    exec DBMS_STATS.CREATE_STAT_TABLE(ownname =>'SCHEMA_NAME' ,stat_tab => 'STATS_TABLE' , tblspace => 'STATS_TABLESPACE');
    Example:
    exec DBMS_STATS.CREATE_STAT_TABLE(ownname =>'SYSTEM',stat_tab => 'STATS_TABLE');

    2. Export statistics to statistics table
    EXEC DBMS_STATS.EXPORT_SCHEMA_STATS('ORIGINAL_SCHEMA' ,'STATS_TABLE',NULL,'SYSTEM');

    3. Import statistics into the data dictionary.
    exec DBMS_STATS.IMPORT_SCHEMA_STATS('NEW_SCHEMA','STATS_TABLE',NULL,'SYSTEM');

    4. Drop the statistics table.
    exec DBMS_STATS.DROP_STAT_TABLE('SYSTEM','STATS_TABLE');

    原文地址: http://www.oradev.com/create_statistics.jsp

    Feedback

    # re: Create statistics for the oracle cost based optimizer  回復  更多評論   

    2009-01-16 11:13 by Neil's NoteBook
    wow , super power !

    只有注冊用戶登錄后才能發(fā)表評論。


    網(wǎng)站導航:
     
    主站蜘蛛池模板: 最近免费字幕中文大全| 自拍日韩亚洲一区在线| 日韩毛片免费一二三| 在线a毛片免费视频观看| 亚洲AV成人无码天堂| 青苹果乐园免费高清在线| 亚洲宅男精品一区在线观看| 无码人妻精品中文字幕免费东京热| 久久综合图区亚洲综合图区| 免费黄网站在线看| 久久精品国产精品亚洲艾草网| 鲁丝片一区二区三区免费| 亚洲欧洲第一a在线观看| 国产在线观看麻豆91精品免费| 精品久久久久久亚洲精品| 无码中文字幕av免费放| 亚洲国产午夜精品理论片在线播放| 国产精品色午夜视频免费看 | 四虎影视在线永久免费观看| 亚洲youwu永久无码精品| 亚洲国产精品综合久久网络| 精品人妻系列无码人妻免费视频| 亚洲中文字幕无码一区| 毛片无码免费无码播放| 国产精品亚洲综合五月天| 大学生美女毛片免费视频| 国产午夜亚洲精品不卡电影| 亚洲熟伦熟女新五十路熟妇| 四虎影视成人永久免费观看视频 | 日韩伦理片电影在线免费观看| 精品女同一区二区三区免费播放| 亚洲尤码不卡AV麻豆| 91精品国产免费入口| 亚洲欧洲国产综合AV无码久久| 亚洲中文字幕无码爆乳av中文| 免费国产黄网站在线观看视频| 中文文字幕文字幕亚洲色| 精品国产日韩亚洲一区| 久久九九兔免费精品6| 久久精品国产亚洲av瑜伽| 久久亚洲精品无码|