ITPub博客

首页 > Linux操作系统 > Linux操作系统 > index rebuild

index rebuild

原创 Linux操作系统 作者:guocun09 时间:2011-12-03 10:19:30 0 删除 编辑

1. 为什么要rebuild index?
在表上频繁的update和delete的操作会导致索引出现很多空间碎片,从而使得访问该索引的SQL查询效率下降,通过rebuild index,可以回缩空间碎片,并提供查询效率。

2.rebuild index時如何提高速度?
1>使用nologging,減少redo的產生
2>使用parallel

3>盡量在不對表進行dml操作時,進行rebuild,這樣就可以不使用online選項
4>使剩余的index表空間要大于索引的空間
5>最大temp表空間,建立索引的時候會用到temp段

3.rebuild不加online和加online區別?
1>加online
rebulid online執行過程中可以對表進行DML動作,但在rebuild online之前要注意有沒有其它session對table的鎖,如果有鎖rebuild會hang住直到鎖備釋放為止,這么任何session都不能對table進行DML操作了,而且rebuild的時間會較長
可查看案例:http://www.itpub.net/forum.php?mod=viewthread&tid=1445427&extra=&highlight=&page=1
2>不加online(其實就是offline)
rebuild執行過程中不能對表進行DML操作,在rebulid前即便其它session對table有鎖也可以rebulid完成,且執行速度較快

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/25583515/viewspace-712662/ ,如需转载,请注明出处,否则将追究法律责任。

下一篇: sql checkdb
请登录后发表评论 登录
全部评论
DBA,掌握Oracle,SQLServer,MySQL,hadoop,casscandra等数据库。喜爱深入研究数据库技术原理,擅长管理和优化工作。

注册时间:2011-10-02

  • 博文量
    177
  • 访问量
    686668