加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

Oracle create index online

发布时间:2020-12-12 15:03:26 所属栏目:百科 来源:网络整理
导读:1.1 create index 如果目标表有 DML 操作,并且没有提交,此时创建索引报错 ORA-00054: resource busy and acquire with NOWAIT specifiedor timeout expired ; 如果目标表上正在建立索引( create index ),此时 DML 操作会被阻塞; 总结:直接 create in

1.1create index

  1. 如果目标表有DML操作,并且没有提交,此时创建索引报错

ORA-00054: resource busy and acquire with NOWAIT specifiedor timeout expired

  1. 如果目标表上正在建立索引(create index),此时DML操作会被阻塞;

总结:直接create index必须确定目标表没有DML操作,或者停业务情况下建立索引。

1.2create index online

  1. 如果目标表有DML操作,并且没有提交,此时使用online会等待提交后再建立索引;

  2. 如果目标表上正在建立索引(create index online),此后DML操作会不会被阻塞,但是没有提交的话会一直阻塞建立索引,待DML提交后继续创建索引;

总结:如果目标库正在频繁入库,可考虑使用online建立。


实际上,伴随着资源的争用,就是lock的产生,有兴趣的朋友的可以研究lock的兼容矩阵。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读