当前位置:Gxlcms > 数据库问题 > Oracle在线新增索引

Oracle在线新增索引

时间:2021-07-01 10:21:17 帮助过:10人阅读

  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在线新增索引

标签:unique   acl   pre   方式   影响   创建   oracl   唯一索引   tables   

人气教程排行