Oracle在线新增索引

Posted 不想下火车的人

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Oracle在线新增索引相关的知识,希望对你有一定的参考价值。

  Oracle新增索引语法很简单,如果是普通索引的话:

create Index IDX_T_WLF on T_WLF(ACTIVITYID,ACTIVETIME) tablespace TBS_VCODE_IDX;

  如果是唯一索引的话:

create unique Index IDX_T_WLF on T_WLF(ACTIVITYID,ACTIVETIME) tablespace TBS_VCODE_IDX;

  以上方式默认是非在线的,啥是非在线?就是我们优先执行索引创建,其他DML语句执行不了。在线模式就是允许DML语句同时执行:

create unique Index IDX_T_WLF on T_WLF(ACTIVITYID,ACTIVETIME) online tablespace TBS_VCODE_IDX;

  在线与非在线的区别:非在线锁表,优先创建索引,此时DML都被阻塞,所以快;相反,在线锁的是行而非表,通过临时表进行索引的创建,所以不会影响DML操作,但副作用就是慢。

  如果在生产环境操作,不停服务的话,势必导致创建索引期间仍有DML操作进来。另外如果是大表,那么采用非在线而导致锁表所带来的影响可能会很大。一句话,生产环境不停服的脚本操作,建议使用online。

以上是关于Oracle在线新增索引的主要内容,如果未能解决你的问题,请参考以下文章

oracle 索引存在则删除

jeecgboot-online在线开发3

jeecgboot-online在线开发3

急急急,在线等!solr4.10结合oracle增量导入数据问题!

没索引oracle无唯一索引交换分区会丢失数据?

Oracle SQL