oracle rebuild online,rebuild online 请慎用
好多初级DBA很喜欢用reuildonline重建索引,他们认为这样做不会影响业务。
曾经发生的几次故障,在业务用的时候,rebuild online索引,导致大部分业务无法使用,数据库hang.
其实rebulid 索引很简单
drop index index_name
Alter indexindex_name rebuild;
Alter indexindex_name rebuild online;
作为DBA,对生产系统执行任何操作时,仅仅懂这些还是远远不够的,需要明确如下几点
1、执行该命令会对业务有啥影响,是不是业务时间,如果是一定不要进行类此操作。因为在大对象中创建索引时不仅需要较大temp表空间,而且是DDL操作,基于表原有索引SQL语句的执行计划都会发生变化,导致大量的解析导致消耗大量的cpu资源。
2、如果删除或者索引失效后,会出现大量的全表扫描。这不仅对系统I/O产生压力,对CPU、内存方面压力也大。
3.要理解rebuild和rebuildonline 的区别。
alter index rebuild online实质上是扫描表而不是扫描现有的索引块来实现索引的重建.
alter index rebuild 只扫描现有的索引块来实现索引的重建。
rebuild index online在执行期间不会阻塞DML操作,但在开始和结束阶段,需要请求模式为4的TM锁。因此,如果在rebuild indexonline开始前或结束时,有其它长时间的事物在运行,很有可能就造成大量的锁等待。也就是说在执行前仍会产生阻塞,应该避免排他锁.如果在业务期间做,可能会导致 online执行很长时间,在 rebulid index online 的时候走的是 full table scan,这时候需要排序,消耗大量的temp空间,rebuild online需要2倍的索引空间。
而rebuild index在执行期间会阻塞DML操作, 但速度较快,rebulidindex 走的index ffs,而ffs搜索的顺序是根据leaf block的物理存储顺序相关,也需要排序。也会消耗大量的临时表空间。
总之不要在业务期间进行DDL(rebulid 及rebulid online index),或者使用DROP INDEX creat index 来代替rebuild index。
oracle rebuild online,rebuild online 请慎用相关推荐
- oracle index alter,Oracle alter index rebuild 一系列问题
在ITPUB 论坛上看到的一个帖子,很不错.根据论坛的帖子重做整理了一下. 原文链接如下: alter index rebuild online引发的血案 一. 官网说明 在MOS 上的一篇文章讲 ...
- 发个真正高效清理垃圾的脚本(请慎用,效果很强)
发个真正高效清理垃圾的脚本(请慎用,效果很强) 请复制以下内容到文本文档中,并修改后缀名为*.BAT ************分割线******请复制以下内容******** @echo off co ...
- oracle中alter index,oracle alter index rebuild online和alter index rebuild的區別
本文用10046事件來解析alter index rebuild與alter index rebuild online的區別 alter index rebuild online實質上是掃描表而不是掃 ...
- oracle rebuild online,ORACLE alter index rebuild online 操作产生的锁
ORACLE通过锁和闩的方式实现了并发控制,v$lock 视图列出了数据库中当前拥有的锁以及未完成的锁请求.当发觉有session处于等待事件时 ,可以通过v$lock查询信息. v$lock中的常用 ...
- oracle java耗cpu_ORACLE高手请看过来,CPU使用率100% (100分)
看不出什么问题 oms.nohup 好像正常 总之云里雾里 剪了最后一段青帮忙看看 用于 Windows NT 的 OEMCTL: 版本 9.2.0.1.0 正式版 版权所有 (c) 1998, 20 ...
- mysql rebuild index_MSSQL Rebuild(重建)索引
前的项目是做数据库的归档,在每次archive后都需要对原数据库的索引进行rebuild,以减少索引碎片,于是乎就自己写了一段sql: DECLARE @tablename VARCHAR(50) D ...
- 药名上如有这10个字请慎用!用错了会对身体带来更大伤害
来源:广州日报(guangzhoudaily).人民网.央视财经.惠州日报 1. 药物慎用 生病吃药,除疗效外,你是否关注"副作用"?买药时,药盒上有这10个字慎买.药名上 ...
- 小孩发烧请慎用抗病毒类药物!
请父母们.医生们注意了,我最近发现在我的小孩感冒输液时验证出一个问题,那就是她对抗病毒类药物(如热毒宁)有很强的过敏反应,甚至导致高烧抽筋. 我的小孩今年2岁.1月21日傍晚患急性咽炎发烧至38度左右 ...
- Oracle项目管理系统之合同请款管理
卷首语 合同模块包括自合同签订前的合同谈判.合同审核.律师咨询.设计联络会.合同签订,以及合同执行.变更.支付.奖励.索赔.验收.结算等全过程的管理与监控. 合同请款管理 项目请款主要是基于已签订合同 ...
最新文章
- 高并发编程-happens-before
- ORA-12516 TNS: 监听程序找不到符合协议堆栈要求的可用处理程序
- QML编程之旅 -- 事件处理
- div置于页面底部_网易内部PPT模板有点丑,如何花最少的时间提高页面颜值?
- php 单例模式 单态模式
- 苹果推送消息服务(转)
- Python selenium对js元素进行增删改查操作
- Android长度单位详解(dp、sp、px、in、pt、mm、dip)
- linux之LAMP架构搭建
- 后疫情时代,银行从数字化转型到智能化“迁徙”
- Python Pycharm 配置Tips01 - 配置Pycharm的Python版本
- Jmeter如何将上一个请求的结果作为下一个请求的参数——使用正则表达式提取器转载...
- 2021年中国互联网行业发展现状及未来发展趋势分析[图]
- java审批工作流,值得一读!
- 罗永浩以为×××短信给了马化腾一记暴击,实际……
- WIFI-WPA破解
- TOM带你玩充电 篇三:15款5号电池横评及选购建议——南孚金霸王小米宜家耐时品胜一个都逃不了...
- 进程的切换——switch_to函数
- 有会用正则表达式解这个吗?
- Go语言中的次方表示