分析index降低索引层次
1)分析索引
analyze index index_name validate structure;
2)查询索引信息:
select NAME,HEIGHT,LF_ROWS,LF_BLKS,DEL_LF_ROWS from index_stats where name='I_B_PACKAGE_STATE_TRANS_P1';
3)如果DEL_LF_ROWS有值;
alter index index_name rebuild;
4)再次查询:
select NAME,HEIGHT,LF_ROWS,LF_BLKS,DEL_LF_ROWS from index_stats where name='I_B_PACKAGE_STATE_TRANS_P1';
=====================补充===================
analyzeindex **** validate structure ——分析是否要重建索引,或者索引块有没有坏。分析完后index_stats就有结果了,你可以根据index_stats中的结果来分析是否要rebuild索引
Analyze index**** compute statistics —— 收集统计数据。
在analyze index 的时候需要两个命令,分别是analyzeindex index_name validate structure. 和analyze index index_name compute statistics
analyze index index_name validate structure:是用来分析索引的数据块是否有坏块,以及根据分析得到的数据(存放在index_stats)來判断索引是否需要重新建立。
什么样的index需要rebuild?
当一个table经常进行DML操作时,它的索引会存在许多block空间的浪费,这是因为index block中的记录只有在全部表示为不可用时, block 才能被加入到freelist中去被重新利用。所以我们需要寻找那些浪费空间很严重的index。
方法是: 1) analyze index index_name validate structure;
2) select del_lf_blk_len/lf_blk_len from index_stats where name = :index_name;
3) 如果结果大于20%, 那你的Index就可以被rebuild了。
validate structure有二中模式: online, offline, 默认是offline模式。以offline模式分析时, 会對表加一个4级別的锁(表共享),对run正在运行的系統可能造成一定的影响。
而online模式则没有表lock的影响,但当以online模式分析时, 在视图index_stats没有统计信息。
analyze indexindex1 compute statistics:是用来统计index的分析信息,来为CBO服务的。从9i开始,Oracle以建议使用dbms_stats package代替 analyze
1)分析索引
analyze index index_name validate structure;
2)查询索引信息:
select NAME,HEIGHT,LF_ROWS,LF_BLKS,DEL_LF_ROWS from index_stats where name='I_B_PACKAGE_STATE_TRANS_P1';
3)如果DEL_LF_ROWS有值;
alter index index_name rebuild;
4)再次查询:
select NAME,HEIGHT,LF_ROWS,LF_BLKS,DEL_LF_ROWS from index_stats where name='I_B_PACKAGE_STATE_TRANS_P1';
=====================补充===================
analyzeindex **** validate structure ——分析是否要重建索引,或者索引块有没有坏。分析完后index_stats就有结果了,你可以根据index_stats中的结果来分析是否要rebuild索引
Analyze index**** compute statistics —— 收集统计数据。
在analyze index 的时候需要两个命令,分别是analyzeindex index_name validate structure. 和analyze index index_name compute statistics
analyze index index_name validate structure:是用来分析索引的数据块是否有坏块,以及根据分析得到的数据(存放在index_stats)來判断索引是否需要重新建立。
什么样的index需要rebuild?
当一个table经常进行DML操作时,它的索引会存在许多block空间的浪费,这是因为index block中的记录只有在全部表示为不可用时, block 才能被加入到freelist中去被重新利用。所以我们需要寻找那些浪费空间很严重的index。
方法是: 1) analyze index index_name validate structure;
2) select del_lf_blk_len/lf_blk_len from index_stats where name = :index_name;
3) 如果结果大于20%, 那你的Index就可以被rebuild了。
validate structure有二中模式: online, offline, 默认是offline模式。以offline模式分析时, 会對表加一个4级別的锁(表共享),对run正在运行的系統可能造成一定的影响。
而online模式则没有表lock的影响,但当以online模式分析时, 在视图index_stats没有统计信息。
analyze indexindex1 compute statistics:是用来统计index的分析信息,来为CBO服务的。从9i开始,Oracle以建议使用dbms_stats package代替 analyze
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/31397003/viewspace-2141733/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/31397003/viewspace-2141733/