首页 > 代码库 > Oracle create index online
Oracle create index online
1.1 create index
如果目标表有DML操作,并且没有提交,此时创建索引报错
ORA-00054: resource busy and acquire with NOWAIT specifiedor timeout expired;
如果目标表上正在建立索引(create index),此时DML操作会被阻塞;
总结:直接create index必须确定目标表没有DML操作,或者停业务情况下建立索引。
1.2 create index online
如果目标表有DML操作,并且没有提交,此时使用online会等待提交后再建立索引;
如果目标表上正在建立索引(create index online),此后DML操作会不会被阻塞,但是没有提交的话会一直阻塞建立索引,待DML提交后继续创建索引;
总结:如果目标库正在频繁入库,可考虑使用online建立。
实际上,伴随着资源的争用,就是lock的产生,有兴趣的朋友的可以研究lock的兼容矩阵。
本文出自 “90SirDB” 博客,请务必保留此出处http://90sirdb.blog.51cto.com/8713279/1916140
Oracle create index online
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。